Comando ls, veja os parâmetros que são mais usados no Linux
fonte: https://www.codigofonte.com.br/dicas/listagem-de-diretorios-no-linux-15-exemplos-de-utilizacao-do-comando-ls
Por: Marcos A.T Silva
O comandoLS (List), no Linux, faz realmente o que seu nome dá a entender. Ele lista o conteúdo de diretórios. Para quem adora usar o terminal, ou até mesmo para quem precisa, ele é imprescindível. Trata-se de um dos comandos mais utilizados em sistemas Unix-like, além disso, um comando valiosíssimo para administradores de servidores Linux.
Trata-se de um comando também capaz de listar arquivos de diferentes maneiras. O usuário é capaz, com o comando LS, de listar arquivos em ordem alfabética, em forma de listas simples, em colunas, e de diversos outros modos (em blocos, também).
Com o LS, podemos visualizar informações de uma maneira mais amigável, mais confortável, até mesmo porque, dependendo da situação e do usuário, o shell pode assustar um pouco, principalmente quando um grande número de informações é exibido ao mesmo tempo.
Vamos lá. Vamos mostrar a você 15 exemplos de utilização do comando LS, no Linux:
1) ls
Esta é a forma mais básica. Ao simplesmente digitar “ls” (sem aspas e seguido de um <ENTER>) no prompt de comando, o usuário pode conferir uma lista com os arquivos contidos no diretório, sem maiores detalhes, sem que sejam exibidas informações tais como, por exemplo, tamanho dos arquivos, data de modificação, etc:
12345 | root@host [/home/codigofonte]# ls./ codigofonte.jpg codigofonte.php../ codigofontejpg.jpg codigofonte_teste.phpcodigofonte_2.jpg .codigofonte.php codigofonte.txtroot@host [/home/codigofonte]# |
2) ls -l
O comando acima exibe o conteúdo da pasta em forma de lista:
123456789101112 | root@host [/home/codigofonte]# ls -ltotal 540drwxr-xr-x 2 root root 4096 Feb 11 11:26 ./drwx–x–x. 26 root root 4096 Feb 11 11:17 ../-rw-r–r– 1 root root 27886 Feb 5 13:50 codigofonte_2.jpg-rw-r–r– 1 root root 211156 Dec 1 10:43 codigofonte.jpg-rw-r–r– 1 root root 216423 Dec 1 10:23 codigofontejpg.jpg-rw-r–r– 1 root root 1809 Feb 11 11:19 .codigofonte.php-rw-r–r– 1 root root 1809 Feb 11 11:19 codigofonte.php-rw-r–r– 1 root root 56141 Feb 11 11:20 codigofonte_teste.php-rw-r–r– 1 root root 19899 Feb 11 11:19 codigofonte.txtroot@host [/home/codigofonte]# |
3) ls -a
Com o comando ls seguido do parâmetro -a, podemos listar o conteúdo de um diretório em forma de coluna:
12345 | root@host [/home/codigofonte]# ls -a./ codigofonte.jpg codigofonte.php../ codigofontejpg.jpg codigofonte_teste.phpcodigofonte_2.jpg .codigofonte.php codigofonte.txtroot@host [/home/codigofonte]# |
4) ls -t
Com ls -t podemos listar os arquivos por ordem de data de modificação. Arquivos que foram modificados por último, mais recentemente, são exibidos em primeiro lugar:
12345 | root@host [/home/codigofonte]# ls -tcodigofonte.txt codigofonte_teste.php codigofonte_2.jpgcodigofonte.php .codigofonte.php codigofonte.jpg./ ../ codigofontejpg.jpgroot@host [/home/codigofonte]# |
5) ls -lt
Lista os arquivos por ordem de data de modificação, também exibindo os modificados mais recentemente em primeiro lugar. Porém, este comando lista tudo com mais detalhes:
123456789101112 | root@host [/home/codigofonte]# ls -lttotal 540-rw-r–r– 1 root root 19535 Feb 11 11:34 codigofonte.txt-rw-r–r– 1 root root 1944 Feb 11 11:34 codigofonte.phpdrwxr-xr-x 2 root root 4096 Feb 11 11:26 ./-rw-r–r– 1 root root 56141 Feb 11 11:20 codigofonte_teste.php-rw-r–r– 1 root root 1809 Feb 11 11:19 .codigofonte.phpdrwx–x–x. 26 root root 4096 Feb 11 11:17 ../-rw-r–r– 1 root root 27886 Feb 5 13:50 codigofonte_2.jpg-rw-r–r– 1 root root 211156 Dec 1 10:43 codigofonte.jpg-rw-r–r– 1 root root 216423 Dec 1 10:23 codigofontejpg.jpgroot@host [/home/codigofonte]# |
6) ls -ltr
Similar ao comando acima, com a diferença de listar em ordem reversa, ou seja, os modificados mais recentemente vão ficando para o final da lista:
123456789101112 | root@host [/home/codigofonte]# ls -ltrtotal 540-rw-r–r– 1 root root 216423 Dec 1 10:23 codigofontejpg.jpg-rw-r–r– 1 root root 211156 Dec 1 10:43 codigofonte.jpg-rw-r–r– 1 root root 27886 Feb 5 13:50 codigofonte_2.jpgdrwx–x–x. 26 root root 4096 Feb 11 11:17 ../-rw-r–r– 1 root root 1809 Feb 11 11:19 .codigofonte.php-rw-r–r– 1 root root 56141 Feb 11 11:20 codigofonte_teste.phpdrwxr-xr-x 2 root root 4096 Feb 11 11:26 ./-rw-r–r– 1 root root 1944 Feb 11 11:34 codigofonte.php-rw-r–r– 1 root root 19535 Feb 11 11:34 codigofonte.txtroot@host [/home/codigofonte]# |
7) ls -s
O comando acima exibe os arquivos de uma pasta em formato de bloco, sendo que eles são ordenados por tamanho:
123456 | root@host [/home/codigofonte]# ls -stotal 540 4 ./ 208 codigofonte.jpg 4 codigofonte.php 4 ../ 212 codigofontejpg.jpg 56 codigofonte_teste.php 28 codigofonte_2.jpg 4 .codigofonte.php 20 codigofonte.txtroot@host [/home/codigofonte]# |
8) ls -l *.extensao
O comando acima permite filtrar e listar somente determinados tipos de arquivo. Por exemplo, ls -l *.php exibirá somente os arquivos .php contidos na pasta, e assim por diante:
1234 | root@host [/home/codigofonte]# ls -l *.php-rw-r–r– 1 root root 1944 Feb 11 11:34 codigofonte.php-rw-r–r– 1 root root 56141 Feb 11 11:20 codigofonte_teste.phproot@host [/home/codigofonte]# |
9) ls -1
Com ls -1, podemos fazer com que os arquivos do diretório sejam listados por linha, um em cada linha:
1234567891011 | root@host [/home/codigofonte]# ls -1./../codigofonte_2.jpgcodigofonte.jpgcodigofontejpg.jpg.codigofonte.phpcodigofonte.phpcodigofonte_teste.phpcodigofonte.txtroot@host [/home/codigofonte]# |
10) ls -lh
Para obter uma listagem de arquivos que exiba seus respectivos tamanhos de uma forma mais compreensível, ou “Human Readable” (humanamente legível). Assim, você pode conferir os tamanhos em KB, MB, GB, etc:
123456789101112 | root@host [/home/codigofonte]# ls -lhtotal 540Kdrwxr-xr-x 2 root root 4.0K Feb 11 11:26 ./drwx–x–x. 26 root root 4.0K Feb 11 11:17 ../-rw-r–r– 1 root root 28K Feb 5 13:50 codigofonte_2.jpg-rw-r–r– 1 root root 207K Dec 1 10:43 codigofonte.jpg-rw-r–r– 1 root root 212K Dec 1 10:23 codigofontejpg.jpg-rw-r–r– 1 root root 1.8K Feb 11 11:19 .codigofonte.php-rw-r–r– 1 root root 1.9K Feb 11 11:34 codigofonte.php-rw-r–r– 1 root root 55K Feb 11 11:20 codigofonte_teste.php-rw-r–r– 1 root root 20K Feb 11 11:34 codigofonte.txtroot@host [/home/codigofonte]# |
11) ls -d */
Digamos que você esteja em um diretório e deseje listar todos os seus subdiretórios, apenas, excluindo os arquivos aí presentes. Basta então digitar ls -d */ , e o output será similar ao abaixo:
123 | root@host [/home/codigofonte]# ls -d */codigofonte_1// codigofonte_2// codigofonte_imagens// codigofonte_teste//root@host [/home/codigofonte]# |
12) ls -g e ls -G
Para excluir da listagem de arquivos os proprietários e os grupos de cada arquivo. O comando ls -g exclui da lista o proprietário, e ls seguido do parâmetro -G (observe a letra maiúscula aqui) exclui o grupo. Também é possível usar os dois de forma combinada, ou seja, ls -g -G :
12345678910111213141516 | root@host [/home/codigofonte]# ls -g -Gtotal 556drwxr-xr-x 6 4096 Feb 11 12:54 ./drwx–x–x. 26 4096 Feb 11 11:17 ../drwxr-xr-x 2 4096 Feb 11 12:54 codigofonte_1/drwxr-xr-x 2 4096 Feb 11 12:54 codigofonte_2/-rw-r–r– 1 27886 Feb 5 13:50 codigofonte_2.jpgdrwxr-xr-x 3 4096 Feb 11 12:57 codigofonte_imagens/-rw-r–r– 1 211156 Dec 1 10:43 codigofonte.jpg-rw-r–r– 1 216423 Dec 1 10:23 codigofontejpg.jpg-rw-r–r– 1 1809 Feb 11 11:19 .codigofonte.php-rw-r–r– 1 1944 Feb 11 11:34 codigofonte.phpdrwxr-xr-x 2 4096 Feb 11 12:54 codigofonte_teste/-rw-r–r– 1 56141 Feb 11 11:20 codigofonte_teste.php-rw-r–r– 1 19535 Feb 11 11:34 codigofonte.txtroot@host [/home/codigofonte]# |
13) ls -R
Através deste comando, você pode listar não somente arquivos e pastas, mas também o conteúdo de subdiretórios, como outros arquivos, por exemplo:
12345678910111213141516171819202122 | root@host [/home/codigofonte]# ls -R.:./ codigofonte_2.jpg .codigofonte.php codigofonte.txt../ codigofonte_imagens/ codigofonte.phpcodigofonte_1/ codigofonte.jpg codigofonte_teste/codigofonte_2/ codigofontejpg.jpg codigofonte_teste.php ./codigofonte_1:./ ../ .codigofonte.php ./codigofonte_2:./ ../ codigofonte.jpg codigofonte.php ./codigofonte_imagens:./ ../ testes_codigofonte/ ./codigofonte_imagens/testes_codigofonte:./ ../ ./codigofonte_teste:./ ../root@host [/home/codigofonte]# |
14) ls -m
Para listar o conteúdo e separar apenas por uma vírgula:
12345 | root@host [/home/codigofonte]# ls -m./, ../, codigofonte_1/, codigofonte_2/, codigofonte_2.jpg,codigofonte_imagens/, codigofonte.jpg, codigofontejpg.jpg, .codigofonte.php,codigofonte.php, codigofonte_teste/, codigofonte_teste.php, codigofonte.txtroot@host [/home/codigofonte]# |
15) ls -d $PWD/*
O comando acima lista pastas e arquivos incluindo o caminho completo para eles:
1234567 | root@host [/home/codigofonte]# ls -d $PWD/*/home/codigofonte/codigofonte_1/ /home/codigofonte/codigofontejpg.jpg/home/codigofonte/codigofonte_2/ /home/codigofonte/codigofonte.php/home/codigofonte/codigofonte_2.jpg /home/codigofonte/codigofonte_teste//home/codigofonte/codigofonte_imagens/ /home/codigofonte/codigofonte_teste.php/home/codigofonte/codigofonte.jpg /home/codigofonte/codigofonte.txtroot@host [/home/codigofonte]# |
Finalizando
O comando ls, juntamente com os vários parâmetros existentes, é realmente importantíssimo. Com ele, podemos realmente obter informações a respeito de arquivos e diretórios, listando seus respectivos conteúdos de diversas maneiras.
Dê uma lida também em outros artigos a respeito de comandos no Linux: