Como adicionar o alias do sistema?

5

Eu tenho esse alias no meu .zshrc :

alias grim='gvim --remote'

Mas isso não é visto no gerenciador de arquivos ranger, acredito que o ranger roda um shell 'genérico' pulando meu .zshrc . Eu quero tornar este alias visível em cada shell.

Adicionei-o a ~/.profile e a /etc/zsh/zshrc , mas sem efeito. Para ser específico, recebi esta mensagem:

/bin/sh: grim: not found
    
por xliiv 21.10.2012 / 14:27

4 respostas

7

Somente shells interativos lêem um arquivo que pode conter definições de alias. Se você quiser usar um apelido para um comando em fragmentos de shell executados por aplicativos, um alias não é a ferramenta certa. Em vez disso, escreva um script de wrapper assim:

#!/bin/sh
gvim --remote "$@"

Chame ~/bin/grim e torne-a executável. Certifique-se de ter ~/bin no seu PATH (você pode colocar o script em qualquer outro diretório que esteja no seu PATH ).

Se você quiser que ele funcione para todos os usuários do sistema, coloque-o em /usr/local/bin , garantindo que esse diretório esteja no PATH de todos.

    
por 22.10.2012 / 00:06
0

Você pode criar um arquivo alias.sh no diretório /etc/profile.d

Escreva a linha

alias grim='gvim --remote'

dentro desse arquivo alias.sh

Isso criará uma personalização em todo o sistema.

Em vez de alias.sh você pode usar qualquer outro nome de arquivo que termine com .sh

    
por 21.10.2012 / 14:44
0

Você pode hackear ~ / .config / ranger / commands.py e substituir a última linha em shell.execute ():

self.fm.execute_command(command, flags=flags)

com

self.fm.execute_command("bash -c '" + command + "'", flags=flags)

Funciona para mim.

    
por 30.12.2013 / 23:54
-1

Você fez algo assim? :

source /path/to/.profile

    
por 21.10.2012 / 23:25

Tags