Alguém pode me dizer qual ll
é o comando do terminal para o alias ? Tudo o que posso encontrar on-line são muitas pessoas dizendo que é um apelido para ls -l
ou ls -la
ou ls -ltr
. Mas isso é simplesmente errado. O resultado parece diferente. Existe alguma maneira de localizar ll
e analisar sua sintaxe?
command-line
bash
alias
Sócrates
fonte
fonte
type -a commandname
irá revelar tudo - ele informará se o comando é um ou mais de um alias, função, interno ou um ou mais arquivos executáveis no seu PATH, nessa ordem de precedência. Isso ajuda a entender por que, por exemplo, desalinhar um comando não o retorna completamente ao comportamento esperado.alias ll='ls -lh'
. Você pode executarls -l
se desejar tamanhos em bytes, em vez de B / kiB / MiB / GiB, amigáveis ao ser humano.ll
é um alias definido no seu~/.bashrc
, desde que você não o tenha alterado, éls -alF
:Essas três opções são:
Como
mostra,
ls
ele próprio é novamente um alias parals --color=auto
:fonte
bash
é o shell padrão para os usuários e o aliasll
é definido no/etc/skel/.bashrc
qual é copiado para cada novo diretório inicial do usuário. Claro que você pode usar qualquer arquivo para armazenar seus próprios aliases - tudo que você precisa é fonte dele.grep
, ele aceitará o nome do arquivo como argumento. Enquanto grepping os arquivos de inicialização o ajudarão a encontrar onde o alias está (re) definido (observe que ele pode estar em um arquivo/etc
- sabendo que você poderá economizar um pouco de esforço se você removê-lo do arquivo de inicialização do usuário e ele ainda persistir ou até muda seu comportamento), se você quiser saber rapidamente qual é a definição, o comando alias , conforme observado na resposta aceita, fará o trabalho.bash
abrir o arquivo, mas é muito melhor! A última frase do post de pergunta diz: Existe alguma maneira de localizarll
e examinar sua sintaxe? , é isso que minha resposta responde.Você pode procurar no seu ~ / .bashrc (ou em algum arquivo em que estejam os seus pseudônimos) ou escrever alguns desses comandos no shell:
Mas por que usar find sem o nome ". *"? Porque você pode colocar isso no seu .bashrc
Como "ll" é um alias, não é necessário que tenha apenas um significado (ll = 'ls -alF --color'), você pode alias seu "ll" como outro comando como, eu não sei, "rm" . Eu acho que é mais uma convenção (produto de usos comuns).
Mas "ll" pode ser um programa armazenado em qualquer pasta do seu PATH. Por exemplo, se você tiver uma pasta chamada "bin" em sua casa, crie um script "ll" que contenha algo como
Mas, e se o seu PATH tiver sido alterado para adicionar outra pasta que contenha o novo comando "ll"? Para informações mais interessantes, você pode consultar o seguinte link para uma pergunta relacionada.
fonte
Não há necessidade de analisar ~ / .bashrc ou qualquer outro script. Você pode verificar seus valores atuais de todos os apelidos digitando o
alias
comando no terminal. Ele trará todos os aliases definidos com suas definições na tela.fonte
Deveria ser
ls -la
. Consulte Linuxize.com: https://linuxize.com/post/how-to-create-bash-aliases/fonte