Como altero os diretórios de trabalho com o KDialog?

0

Caso de uso: Estou trabalhando no terminal em / path / com / a / very / long / name e desejo alterar para outro diretório que esteja profundamente aninhado. Mas eu não conheço o caminho pela memória. Então eu quero navegar através de uma interface gráfica para permitir-me descobrir onde eu preciso navegar.

Eu criei este script:

#!/bin/sh
echo "change working directory"
MYDIRECTORY=$(kdialog --getexistingdirectory ::label1);
if [ "$?" = 0 ]; then
    cd "$MYDIRECTORY"
elif [ "$?" = 1 ]; then
    echo "action canceled";
else
    echo "ERROR";
fi;
exit 0

Infelizmente, isso não funciona. Quando o script sai, permaneço no diretório original no terminal. Eu aprendi que isso é porque meu diretório original foi restaurado quando o subshell que executou o comando cd sai.

Então, como posso alcançar meu objetivo?

    
por MountainX 18.07.2013 / 22:56

1 resposta

3

Escreva como uma função de shell (por exemplo, em seu .bashrc) em vez de um arquivo de script.

    
por 18.07.2013 / 23:34