O terminal aprende erros comuns? [duplicado]

1

Isso pode parecer uma pergunta estúpida.

Estou usando o Ubuntu 15.10 com o Terminal GNOME 3.16.2. Quando eu era novo no sistema, muitas vezes eu digitava 'l' ou 'la' ao invés de 'ls' para listar arquivos, e então me disseram que não eram comandos válidos. Eu obviamente digitei 'ls' corretamente. Agora noto que digitar 'l' e 'la' fazem a mesma coisa que 'ls'.

O que está acontecendo aqui? O terminal aprendeu os erros comuns que cometi e fez aliases para responsabilizá-los, ou isso é um novo recurso que eu instalei sem perceber?

    
por joeramsay 09.04.2016 / 22:25

2 respostas

1

Quando você chama l ou la , basicamente você chama alias:

l='ls -lah'
la='ls -lAh'

Você pode verificar todos os aliases atualmente configurados no seu sistema executando alias . Pode ser bom ter algum mecanismo de autointração que lembre seus erros de digitação e conserte-os, mas por enquanto são apenas aliases pré-configurados.

Pergunta relacionada em: Unix & Linux

    
por kirill-a 09.04.2016 / 22:37
0

O próprio shell não tem capacidade de verificação ortográfica para o usuário. O que você tem com la e l são aliases. No arquivo .bashrc , você pode definir alias para qualquer comando. Por exemplo, se eu digitar incorretamente pwd comando para imprimir o diretório de trabalho, eu usaria isso no meu arquivo .bashrc :

alias pdw='pwd'

Os aliases l e la devem existir no bash shell por padrão e não vejo uma razão pela qual eles não funcionem para você antes. Se você é um usuário em uma máquina com um administrador diferente, é provável que ele tenha desativado ou habilitado isso.

Existe o comando sl , que não é incluído por padrão no Ubuntu, mas mostra uma animação da locomotiva a vapor (daí sl name) quando você digita ls . No entanto, isso é algo que precisa ser instalado manualmente.

Se um comando é uma combinação complexa de outros comandos, você sempre pode usar uma função, como

sl()
{
  echo "You've mistyped ls again"
  echo "Don't rush" 
}

Se você está escrevendo um script, você pode fazer uma verificação ortográfica (e muito mais) sobre isso usando verificação de shell

    
por Sergiy Kolodyazhnyy 10.04.2016 / 00:53