Sem feedback do terminal

2

Sou muito novo no Ubuntu e estou tendo problemas para entender algo sobre o feedback do terminal.

O livro do curso diz que supostamente deve haver feedback do terminal quando você der ao utilitário "which" o nome de um comando que não existe em seu caminho de busca.

No entanto, quando propositadamente faço isso, absolutamente nada aparece. Veja aqui: nenhum feedback de usar comandos que obviamente não fazem nada

Alguém sabe como eu poderia fazer com que o terminal me desse feedback sobre erros?

    
por Will Spencer 25.01.2017 / 22:50

2 respostas

6

which nunca exibiu mensagens de erro na linha de comando. Pelo menos não na versão Debian do Linux. Cada sistema parece ter sua própria versão (uma das razões pelas quais outros comandos são preferidos), então talvez seu curso estivesse referenciando outro sistema operacional? Para uso em scripts, você pode ter 3 status de saída:

EXIT STATUS
   0      if all specified commands are found and executable
   1      if  one  or  more  specified commands is nonexistent or not executable
   2      if an invalid option is specified

Use type , whatis ou whereis . Todos os 3 irão mostrar que não encontrou o que você pediu.

$ type aaa
bash: type: aaa: not found
$ whereis aaaa
aaaa:
$ whatis aaaa
aaaa: nothing appropriate.

e

type firefox
firefox is /usr/bin/firefox
$ whereis firefox
firefox: /usr/bin/firefox /usr/lib/firefox /etc/firefox 
  /usr/share/man/man1/firefox.1.gz
$ whatis firefox
firefox (1)          - a free and open source web browser 
  from Mozilla

Aqui está um pouco da história em que de nosso U & L.

    
por Rinzwind 25.01.2017 / 23:01
-1

which mostrará apenas os comandos do Linux "which" existentes no sistema que você acabou de testar caracteres aleatórios ... não um comando existente ...

Aqui estão alguns exemplos:

$ echo $PATH # This is my default path.
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games      

$ which python
/usr/bin/python

--- Então, o echo $ PATH mostrará meus locais padrão, que são: /usr/local/sbin e /usr/local/bin e /usr/sbin e .. etc ..

Quando você usa which python , o comando terminal está procurando pelo comando python em todos os PATHs existentes que você tem no sistema e mostra onde ele está.

Isso é útil porque às vezes você pode ter um ativador / comando que não esteja listado em seu PATH padrão. PORTANTO, SEU TERMINAL VAI VOLTAR COM UMA RESPOSTA COMO command not found

Você também pode definir seu caminho manualmente:

export PATH="/home/mihai"  
/home/mihai# ls  
Command 'ls' is available in '/bin/ls'

O comando não pôde ser localizado porque '/ bin' não está incluído no Variável de ambiente PATH.

ls: command not found  
echo $PATH  
/home/mihai  
    
por Mihai Dumitrascu 25.01.2017 / 23:15