Linux: Como definir o diretório padrão de emuladores de terminal?


12

Após a atualização para o Ubuntu 11.04, meus terminais (gnome-terminal e urxvt) começam em "/" ao invés de "~"

O que pode causar esse comportamento?

Eu imagino que o diretório de trabalho do Gnome ou X está configurado para "/", ou algo parecido, mas não tenho idéia de onde começar a depurar isso.

Eu uso o zsh, a configuração pode ser incluída.


você poderia tentar dirs -v para descobrir se a última entrada vem de algum pushd após $ HOME de alguma forma. Apenas um pensamento.
Alain Pannetier

Respostas:


5

Eu suponho que você vê esse comportamento ao abrir os termos com atalhos de teclado personalizados, enquanto eles começam no diretório correto, se aberto através do menu ou o Executar aplicativo diálogo.

Curiosamente programas que você define sob o Atalhos Personalizados seção do Gnome Atalhos do teclado A caixa de diálogo não parece herdar o diretório de trabalho da sessão. Não sabendo nada sobre as razões, suspeito que isso seja um erro.

Soluções Alternativas:

  • Use o Execute um terminal atalho no Área de Trabalho seção e definir o seu emulador de terminal preferido sob Sistema = & gt; Preferências = & gt; Aplicações preferenciais = & gt; Sistema = & gt; Emulador de terminal ,

  • Defina o atalho de teclado para um script de wrapper, por ex.

    #!/bin/sh
    exec rxvt -cd $HOME
    
  • Defina o atalho para incluir a configuração do diretório de trabalho, por exemplo:

    gnome-terminal --working-directory=$HOME
    

    ou

    rxvt -cd /path/to/home
    

    (Este último não funciona com $HOME para mim; Eu tive que dar o caminho absoluto.


100% correto! Obrigado! Eu corrigi-lo usando atalhos de teclado compiz 'em vez disso. Muito boas sugestões. (O diálogo de aplicação de execução, na verdade, se comporta como deveria no ubuntu natty)
Joernsn

2

Eu resolvi meu problema adicionando um comando cd no final do meu ~ / .bashrc

...
cd /your_desired_path

Depois disso, toda vez que você chamar o console que usa .bashrc, será solicitado no caminho desejado.


1

Você poderia tentar colocar cd no final do seu ~/.zshrc.


Zsh é meu shell padrão. Isso não estragaria scripts esperando que cwd fosse outra coisa?
Joernsn

1
Os scripts esperam estar na pasta inicial na inicialização.
cYrus

1

Um par de coisas para verificar:

  1. Seu diretório home está definido corretamente (cd ~ leva você para casa, ok)
  2. A partição que contém seu diretório pessoal é montada e utilizável no momento em que o GDM faz o seu login.

Eu tive um problema semelhante usando o ZFS e tendo minha casa em um pool do ZFS. O ZFS não estava começando antes do GDM, então, quando ele me conectou ao meu diretório inicial, não estava lá. Alguns segundos depois, ele estava lá, então eu pude gravar.


Boas sugestões! 1: Se eu fizer o login fora do X, tudo funciona, então parece que o $ HOME pelo menos está correto lá. "echo $ HOME" também está correto nos emuladores de terminal. 2: Eu tentei reiniciar o GDM depois de ter certeza que tudo está montado, sem sorte :(
Joernsn
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.