Tradutor

sexta-feira, 7 de junho de 2013

Comando LS Linux

Sejam Bem Vindos...

Sou Vinicius Figueiredo Dias e quero trazer um pouco sobre o comando "ls" usado em linux via terminal.

O utilitário "ls" faz parte do pacote coreutils  GNU/Linux que disponibiliza varios utilitários importantes para os sistema, como o comando cd , cp , mv. 

Atualmente seu desenvolvimento é mantido por Michael Stone (mstone@debian.org) e sua licença está vinculada a GNU GPLv3 (General Public License versão 3), o que o caracteriza como um software livre e de código aberto, que dispõe-se das quatro liberdades: usar, estudar, modificar e distribuir

A sintaxe do comando ls consiste em iniciar com o próprio comando seguido de opções ou parâmetros que por sua vez podem representar diversas situações e requisitos. 

Tabela de parâmetros: 

OpçãoEspecificação
-a, --allNão ignora entradas começando com .
-A, --almost-allNão lista as entradas implícitas . e ..
--authorCom -l, emite o autor de cada arquivo
-b, --escapeEmite escapes em octal para caracteres não-gráficos
--block-size=TAMANHOUsa blocos de TAMANHO bytes
-B, --ignore-backupsNão lista as entradas implícitas terminadas com ~
-cCom -lt: ordena por, e mostra, ctime. Com -l: mostra o ctime e ordena por nome
-CLista as entradas em colunas
--color[=QUANDO]Controla se usa cores para distinguir os tipos de arquivo. QUANDO pode ser "never" (nunca), "always" (sempre) ou "auto" (automaticamente)
-d , --directoryLista os diretório em vez de seu conteúdo e não interpreta ligações simbólicas
-D, --diredGera a saída projetada para modo "dired" do Emacs
-fNão ordena, habilita -aU, desabilita -ls --color
-F, --classifyAnexa indicador (um dos */=>@|) às entradas
--file-typeSimilar, exceto que não anexa "*"
--format=PALAVRA"across" (-x), "commas" (-m), "horizontal" (-x), "long" (-l), "single-column" (-1), "verbose" (-l), "vertical" (-C)
--full-timeO mesmo que -l --time-style=full-iso
--group-directories-firstLista os diretórios antes de listar os arquivos. Permite usar a opção --sort, mas o uso de --sort=none (-U) desabilita o agrupamento de diretórios.
-G, --no-groupEm lista longa (-l), não emite os nomes de grupo
-h, --human-readableCom -l, emite os tamanhos em formato inteligível
--siSimilar, mas usa potências de 1000, e não de 1024
-H, --dereference-command-lineSegue as ligações simbólicas listadas na linha de comando
--dereference-command-line-symlink-to-dirSegue toda ligação simbólica da linha de comando que apontar para um diretório
--hide=PADRÃONão lista entradas implícitas que coincidam com o PADRÃO em sintaxe shell (ignorado quando se usa -a ou -A)
--indicator-style=PALAVRAAnexa o indicador de tipo no estilo PALAVRA para os nomes das entradas: "none" (nenhum, padrão), "slash" (-p), "file-type" (--file-type), "classify" (-F) "file-type" (--file-type), "classify" (-F)
-i, --inodeEmite o número de índice de cada arquivo
-I, --ignore=PADRÃONão lista as entradas implícitas que coincidam com o PADRÃO (em sintaxe shell)
-kO mesmo que –block-size=1K
-lUsa o formato de lista longa
-L, --dereferenceQuando mostrar informações de uma ligação simbólica, mostra as do arquivo a quem ela referencia, e não do arquivo tipo ligação em si
-mPreenche toda a largura com uma lista de entradas separadas por vírgula
-n, --numeric-uid-gidComo -l, mas lista usuário e grupo em números ID
-N, --literalEmite nomes de entradas de forma crua (não trata, por exemplo, caracteres de controle de forma especial)
-oComo -l, mas não lista informações sobre o grupo
-p, --indicator-style=slashAnexa o indicador / aos diretórios
-q, --hide-control-charsEmite ? ao invés de caracteres não gráficos
--show-control-charsEmite caracteres não gráficos como são (padrão seja um terminal)
-Q, --quote-nameColoca os nomes das entradas entre aspas
--quoting-style=PALAVRAUsa estilo de citação PALAVRA para os nomes das entradas: Palavra = literal, locale, shell, shell-always, c, escape
-r, --reverseInverte a ordem de ordenação
-R, --recursiveLista subdiretórios recursivamente
-s, --sizeMostra o tamanho alocado para cada arquivo, em blocos
--sort=PALAVRAOrdena por PALAVRA em vez de pelo nome: none -U, extension -X, size -S, time -t, version -v (nenhum, extensão, tamanho, hora, versão)
--time=PALAVRACom -l, mostra a hora como PALAVRA em vez do horário de modificação: Palavra: atime -u, access -u, use -u: último acesso, ctime -c, status -c: última modificação; usa o horário especificado como chave de ordenação se --sort=time
--time-style=ESTILOCom -l, emite os horários usando o estilo ESTILO: FORMATO é interpretado como em "date"; se for FORMATO1, FORMATO2, FORMATO1 se aplica a arquivos não recentes, e FORMATO2 aos recentes; se ESTILO tem como prefixo "posix-", ESTILO só faz efeito fora da localidade POSIX
-tOrdena pelo horário de modificação
-T --tabsize=COLAssume paradas de tabulação a cada COLS em vez de 8
-ucom -lt: ordena e exibe por data de acesso com -l: exibe o tempo de acesso e ordena por nome sem nenhum parâmetro, ordena por data de acesso
-UNão ordenar; exibe as entradas na ordem do diretório
-vOrdena pela ordem natural dos números de versão dentro do texto
-w, --width=COLSAssume a largura da tela como COLS
-xLista as entradas por linha em vez de por coluna
-XOrdena por ordem alfabética das extensões das entradas
-Z, --contextEmite qualquer contexto de segurança SELinux de cada arquivo
-1Lista arquivos por linha
--helpExibe a ajuda
--versionInforma a versão

Comando para listar arquivos ocultos.

Lembre-se que os arquivos ocultos começar com "."

$ ls -a 
.
.adobe
.fontconfig
.profile 
... 

Em algumas distribuições GNU/Linux o comando ls não faz distinção de cores em arquivos e diretórios, porém o parâmetro --color pode ter três argumentos: nunca colorir (none), sempre colorir (always), colorir automaticamente, que exige o parâmetro auto e surtirá efeito desde que a saída padrão esteja associada a um terminal (tty). 

Sendo assim o comando "ls --color=none" não fará a distinção de cores, para que isso aconteça é preciso usar o argumento always da seguinte forma: "ls --color=always" ou usar a opção auto. 

Similar e mais complexo que o parâmetro none, podemos usar a "ls -f", que desabilitará o suporte a cores e exibirá arquivos ocultos, nada mais é do que a junção de "ls -aU" e "ls --color=none". Também com a opção -F pode-se anexar indicadores nos arquivos classificando-os com símbolos que pode caracterizar arquivos e diretórios, os caracteres usados são:

  • * - Arquivos executáveis
  • / - Para diretórios
  • > - Aponta de onde está vindo link simbólico
  • @ - Para link simbólico
  • = - Soquete
Utilizando o comando "ls --classify" ele informará no final do arquivo em qual classe se em enquadra o arquivo, por isso é importante saber os caracteres acima. A opção --file-type possui o mesmo papel, porém não exibe os arquivos executáveis. Usar o --format=Palavra exigirá o uso de argumentos que podem corresponder a opções de separação por vírgula (commas), ordenar em uma única (1), como mostra a tabela abaixo: 

ArgumentoExemplo
"across" (-x)ls --format= across
"commas" (-m)ls --format= commas
"horizontal" (-x)ls --format= horizontal
"long" (-l)ls --format=long
"single-column" (-1)ls --format=single-column
"verbose" (-l)"ls --format= verbose
"vertical"ls --format= vertical

A opção -h acrescenta uma coluna contendo o tamanho do arquivo se houver a necessidade de tal informação porem é preciso usar o parametro -l para que a coluna apareça.

O argumento -i refere-se ao número de índice de cada arquivo no sistema que são chamados de inodes, ou seja, cada arquivo é identificado por um número.

A opção --full-time é semelhante à opção -l, mas não lista o dono do arquivo. 


Sem comentários:

Enviar um comentário