Como criar um atalho de comando para o arquivo .sh?

0

Eu quero digitar firefox no terminal e executar o navegador Mozilla.

Então eu tento criar sym-link: ln -s /opt/firefox firefox

mas depois de digitar firefox no terminal, recebo um erro: bash: firefox: command not found

Onde está o problema?

    
por MyTitle 12.09.2012 / 12:22

3 respostas

6

Você criou um link para /opt/firefox (este é realmente o binário do firefox, você pode iniciar o FF ao chamar /opt/firefox ?) no diretório que era seu diretório de trabalho atual quando emitiu o comando, provavelmente seu diretório inicial.

No entanto, o diretório em que o link foi criado não está no seu $PATH , então você ainda não pode executá-lo diretamente.

A solução é criar o link em um diretório com está em seu caminho. Por exemplo:

ln -s /opt/firefox /usr/local/bin/firefox

ou adicione /opt ao seu caminho, mas eu recomendaria a primeira opção.

Uma observação: /opt/ é um lugar estranho para colocar um binário. Como você instalou o Firefox de qualquer maneira e por que você não usou o sistema de gerenciamento de pacotes de distribuição?

    
por 12.09.2012 / 12:29
2

Antes de mais nada, certifique-se de que /opt/firefox é o executável e não o diretor. Tente executar /opt/firefox , se isso funcionar, você pode adicionar o diretório com o executável à sua variável $PATH .

Supp

Se você tentar executar um comando cmd , seu sistema varre todos os elementos de caminho nesta variável para um executável com o nome cmd . Se você deseja estender os diretórios para escanear, apenas atualize a variável como:

export PATH=$PATH:/new/path

Então, da próxima vez que você tentar executar cmd , seus sistemas também procurarão o executável em /new/path . Isso significa que, se o seu executável do firefox estiver localizado em /opt , adicione o seguinte ao seu .bashrc :

export PATH=$PATH:/opt
    
por 12.09.2012 / 12:31
1

O executável padrão do firefox quando o Firefox é instalado geralmente reside em / usr / lib / firefox - que é um diretório:

Por favor, tente verificar isso no seu sistema com o comando:

ls /usr/lib/firefox* 

que no meu sistema produz o resultado:

drwxr-xr-x 13 root root 1020 2012-09-12 06:29 /usr/lib/firefox-3.6.28
drwxr-xr-x  6 root root  916 2011-04-25 18:56 /usr/lib/firefox-4.0
drwxr-xr-x  7 root root   80 2011-04-25 18:56 /usr/lib/firefox-addons

O ícone do Firefox na parte superior da barra principal do Linux (parte superior da tela do monitor) é conectado ao executável do Firefox por meio de um link simbólico em / usr / bin, como:

ls -lt firefox*

lrwxrwxrwx 1 root root 14 2012-09-12 06:29 firefox -> firefox-3.6.28
lrwxrwxrwx 1 root root 29 2012-09-12 06:29 firefox-3.6.28 -> ../lib/firefox-3.6.28/firefox

Com essa estrutura, você pode ter várias versões do Firefox vinculadas simbolicamente e, para tentar uma versão diferente, basta remover o link do firefox em / usr / bin e criar um novo firefox para uma versão diferente em / usr / lib, como (onde o # prompt abaixo é o prompt da conta root:

# rm firefox
# ln -s ../lib/firefox-4.0/firefox.sh firefox

Como mencionado em postagens anteriores sobre este tópico, você precisa ter certeza de que o objeto vinculado realmente existe quando você cria um link simbólico para ele.

    
por 12.09.2012 / 17:57

Tags