Sobre como escrever esse alias:
O alias não precisa abrir os arquivos separadamente - gedit
pode receber vários arquivos.
alias a="gedit ~/Desktop/abc/test1.c ~/Desktop/xyz/test2.c"
Isso também substitui o caminho do seu diretório home por ~
. Se ele funcionar para outros usuários, use ~konstantinosubuntu
em vez de ~
.
Para tornar o comando independente do terminal, para que ele continue em execução se você fechar o terminal, você pode adicionar &
para executá-lo em segundo plano e nohup
para que ele não saia quando o terminal for fechado:
alias a="nohup gedit ~/Desktop/abc/test1.c ~/Desktop/xyz/test2.c &"
Na sintaxe do seu exemplo:
O problema com o &&
é que o &&
precisa ser colocado no final da linha anterior. Caso contrário, o fim da linha é apenas o fim do comando - não há problema até agora - e o início da próxima linha tem um "& amp; & amp;" isso não faz sentido neste lugar.
alias a="
cd /home/konstantinosubuntu/Desktop/abc && gedit test1.c &&
cd /home/konstantinosubuntu/Desktop/xyz && gedit test2.c"
Como alternativa, todo o pseudônimo poderia ser colocado em uma linha. Ou, muito semelhante, uma continuação de linha com \ no final da linha poderia ser usada. Isso seria escrevê-lo como duas linhas, mas executá-lo como uma linha, logicamente.
Você observa em seus comentários que o primeiro gedit
precisa ser fechado antes do segundo arquivo ser aberto e que você não deseja isso. O comando gedit file.txt
executa gedit
em primeiro plano se for a primeira instância. Se gedit
já estiver em execução, ele abrirá uma nova guia nessa instância e sairá. Para fazer com que o alias abra ambos os arquivos no gedit ao mesmo tempo, execute a primeira instância em segundo plano com &
. Isso não funciona junto com &&
, que precisa ser removido:
alias a="
cd /home/konstantinosubuntu/Desktop/abc && gedit test1.c &
cd /home/konstantinosubuntu/Desktop/xyz && gedit test2.c"
(Interessante como é diferente apenas por um caractere, mas com significado muito diferente.)
Caso pretenda ter vários diretórios de trabalho atuais associados de alguma forma com a execução de gedit
usando os comandos cd
, isso não funcionará. Um processo tem exatamente um diretório de trabalho atual. Será o primeiro da instância gedit
aqui.
Só para ficar claro depois de discutir esses exemplos, acho melhor usar algo como na primeira seção, abrindo um gedit
com vários arquivos de uma só vez.