criando abreviações para caminhos comumente usados

3

Eu sou novo no Linux e queria saber se é possível criar abreviações que podem ser usadas no terminal. Eu sei sobre o comando alias , mas não tenho certeza se isso pode ser usado para o que estou procurando.

Exemplo: Digamos que eu precise copiar coisas da pasta ~/Dropbox/thisfolder . Eu sei que eu posso criar um atalho para mudar para esta pasta, criando um alias, como,

alias tf="cd ~/Dropbox/thisfolder"

No entanto, se eu fizer

alias justpath="~/Dropbox/thisfolder"

então, não consigo usar comandos como cp justpath/blahfile ./ . É possível fazer algo assim usando outra forma de abreviar o caminho ~/Dropbox/thisfolder ?

    
por Curious2learn 18.05.2012 / 03:25

1 resposta

6

Em qualquer shell, você pode definir uma variável.

justpath=~/Dropbox/thisfolder

(Nota: sem citações aqui, caso contrário, o ~ não seria expandido). Prefixe-o com um $ para usá-lo:

cp $justpath/blahfile .

Observe que, a menos que você esteja usando zsh, se o valor contiver espaços em branco ou curingas *?\[ , será necessário colocar aspas duplas na expansão da variável ao usá-lo.

justpath=~/'Dropbox/that folder'
cp "$justpath/blahfile" .

O Zsh tem (como sempre faz) melhores instalações. Você pode definir diretórios nomeados acessados com a sintaxe ~foo , generalizando o caso em que foo é um nome de usuário e ~foo é o diretório inicial desse usuário.

alias -d justpath=~/Dropbox/thisfolder
cp ~justpath/blahfile .

E, para casos mais complexos, o zsh oferece diretórios nomeados dinâmicos .

    
por 18.05.2012 / 03:56