Para poder iniciar meu ambiente de trabalho com um único comando, quero iniciar várias urxvt
janelas executando fish
o shell em pastas diferentes. No entanto, não encontrei nenhuma maneira óbvia de fish
executar um comando de inicialização (por exemplo, a cd
) e não sair depois. Alguém descobriu como iniciar fish
em um diretório específico sem torná-lo padrão config.fish
?
Responder1
Fuja cd
de tudo o que está chamando peixe. Por exemplo, em vez de urxvt -e fish
, execute
urxvt -e sh -c 'cd /wherever/you/want; fish'
Faça isso urxvt -e sh -c 'cd /wherever/you/want && fish'
se não quiser que o terminal abra se o diretório não existir.
Responder2
Desde que estou no StackExchange, tenho sido assombrado por esse problema em que, assim que dedico um tempo para escrever uma pergunta, milagrosamente encontro a resposta.
Para quem está tentando fazer o mesmo, aqui está o que acabei fazendo.
Se eu adicionar o seguinte no topo do meuconfiguração.fish:
cd $FISH_START_DIR
então posso fazer o que queria com a seguinte linha de comando:
$ urxvt -e /bin/bash -c 'FISH_START_DIR=<my required directory> fish'
Hacky, sim, mas funciona muito bem.
Desculpe pelo alarme falso.