l, ls & la - quais são as diferenças e existem mais desses comandos?

25

Assim, através de digitação vários comandos Descobri que há não só ls, mas le lamuito. Não parece haver nenhuma manentrada no Ubuntu 12.14. Todos eles parecem fazer coisas semelhantes com pequenas diferenças:

$ ls
app        config     CONTRIBUTING.md  doc       Gemfile       Guardfile  LICENSE  MAINTENANCE.md  Procfile  Rakefile   script  tmp     VERSION
CHANGELOG  config.ru  db               features  Gemfile.lock  lib        log      PROCESS.md      public    README.md  spec    vendor
$ la
app      CHANGELOG  config.ru        db   features  Gemfile       .git        Guardfile  LICENSE  MAINTENANCE.md  Procfile  Rakefile   .rspec  .secret     spec  .travis.yml  VERSION
.bundle  config     CONTRIBUTING.md  doc  .foreman  Gemfile.lock  .gitignore  lib        log      PROCESS.md      public    README.md  script  .simplecov  tmp   vendor
$ l
app/       config/    CONTRIBUTING.md  doc/       Gemfile       Guardfile  LICENSE  MAINTENANCE.md  Procfile  Rakefile   script/  tmp/     VERSION
CHANGELOG  config.ru  db/              features/  Gemfile.lock  lib/       log/     PROCESS.md      public/   README.md  spec/    vendor/

Assim como um pouco de trivialidades, existem mais e o que elas fazem? Existe algum lugar para descobrir isso? Infelizmente, o google pesquisando esses comandos é ignorado porque são muito curtos.

Seiyria
fonte
11
Muito provavelmente, eles são alias a algo já existente. AFAIK, não há laou lcomandos. Experimente \lae \lpara contornar eventuais nomes.
mkc
Com certeza, o único que funciona é \ls. Entendo que isso signifique que todos seriam apelidos lsentão?
Seiyria
Correto, a ausência de executáveis ​​indica que eles são aliases. Veja minha resposta para outras maneiras de determinar isso.
slm

Respostas:

26

Aliases

lsé um comando le lasão provavelmente aliases que fazem uso do comando ls. Se você executar o comando, aliaspoderá encontrar todos os aliases no seu sistema.

$ alias | grep -E ' l=| la='

Isso retornará todos os aliases que correspondem ao padrão l=...ou la=....

Depurando ainda mais

Você também pode usar o comando typepara ver como um comando específico está sendo executado. É um comando, um alias ou uma função.

Exemplo

No meu sistema, eu tenho o comando lsalias para que ele chame, lsmas também inclua um monte de opções extras, como:

$ type -a ls
ls is aliased to `ls --color=auto'
ls is /usr/bin/ls
ls is /bin/ls

Na saída acima, você pode ver que lsexistem aliases, mas também no $ PATH do meu sistema nos diretórios /usr/bine /bin.

slm
fonte
Obrigado pelo exemplo detalhado. Eu aprendi um pouco mais sobre linux hoje!
Seiyria
@Seiyria - de nada. Obrigado pelo Q e espero vê-lo em nosso site no futuro. Boa sorte com sua incursão no Linux!
slm
9

Eles são apenas alias do comando ls com algumas opções. insira a descrição da imagem aqui

man ls listará todas as opções e seus propósitos. Você pode criar seu próprio alias executando no terminal ou adicionando .bashrc algo como: alias lsl = 'ls -lrt'

Jay
fonte
3
O código deve ser formatado como código, não como uma captura de tela, a menos que as cores estejam sendo demonstradas.
21716 Tim Tim
-1

Experimente la -helpos sistemas BSD Unix para obter mais informações la. Eu também encontrei lacomo resultado de um erro de digitação.

mohan
fonte
11
Você está dizendo que laé um comando diferente e não um apelido no seu sistema BSD?
Anthon