Eu não consegui que funcionasse com o emulador x-terminal, mas com o padrão terminal gnome.
user@MacBookPro:~$ gnome-terminal --working-directory=~/code/ruby/my-main-proj
Espero que isso ajude.
Estou tentando escrever um script bash simples, que quando executado a partir da linha de comando, irá cd
em um diretório padrão e, em seguida, abrirá a pasta no navegador de arquivos:
#!/bin/bash
if [ -z "" ]
then
# unless is specified, cd into main proj
cd code/ruby/my-main-proj
else
# cd into project specified by
cd code/ruby/
fi
# open folder in file manager
pcmanfm .
Isso é ótimo, me dá duas coisas:
O problema é que eu gostaria de executar meu script clicando em um ícone da área de trabalho , mas em sua forma atual, o terminal não abre, apenas o navegador de arquivos ..
Então eu fiz uma modificação para tentar fazer o terminal abrir também:
then
# unless is specified, cd into main proj
x-terminal-emulator -e "cd code/ruby/my-main-proj"
else
# code same as before
Mas enquanto o terminal é aberto, ele exibe apenas uma tela em branco, sem prompt ou PWD. Como posso obter um terminal para abrir e ter seu diretório de trabalho alterado para o que estou tentando especificar no meu script bash?
Eu não consegui que funcionasse com o emulador x-terminal, mas com o padrão terminal gnome.
user@MacBookPro:~$ gnome-terminal --working-directory=~/code/ruby/my-main-proj
Espero que isso ajude.
O seu problema é que você não está executando um shell no seu emulador de temrinal, você está tentando executar o cd
, que é um comando do shell, não um shell real (nem mesmo um executável propriamente dito).
Você pode criar um arquivo de entrada da área de trabalho que inicie um shell em um diretório de trabalho personalizado, como este:
MyProject.desktop :
[Desktop Entry]
Type=Application
Terminal=true
Exec=x-terminal-emulator
Path=/path/to/code/ruby/my-main-proj
Name=My Project
Observe o Caminho = ... acima.
Tags bash