ls command - define o número de colunas

4

Existe uma maneira de definir o número de colunas em ls output?

Cheguei até aqui: ls -C classifica em colunas e ls -1 produz uma coluna. A opção --tabsize = para produzir duas colunas resultou no que parece ser esta imagem aqui [que origina nesta postagem ].

Aprendendo que o comando pressupõe que uma coluna tem oito caracteres de largura Eu tentei width= e não fui longe.

Pergunta : Como definir o número de linhas com as ferramentas on-board ls 'sem outro comando, como column ?

    
por erch 13.06.2013 / 00:33

6 respostas

2

Você precisará canalizar | your ls output. Programas como sed ou cut podem classificar dados desde que você saiba qual é o seu delimitador. Na maioria das vezes, no espaçamento de coluna, o delimitador é uma guia.

No entanto, não sei de muitas maneiras ou motivos que você gostaria de dividir sua saída ls em colunas. Você sempre pode canalizar sua saída para more e facilitará a leitura dos seus dados.

    
por 13.06.2013 / 02:53
6

Não. ls não tem esse recurso (e poucos gostariam de o fazer) .

    
por 13.06.2013 / 00:50
2

Infelizmente, ls não suporta isso. Você teria que fazer algo como ls -1 | xargs -n 2 (ou apenas ls | xargs -n 2 também deveria funcionar).

    
por 09.03.2015 / 16:23
1

Isso é menos sobre o número de colunas e mais sobre o que será produzido. Você não pode configurar todos os campos, mas pode ocultar o proprietário e o grupo por -g e -G e configurar a hora em --time-style= .

    
por 13.06.2013 / 00:57
0

Eu testei esses comandos no Linux Debian no terminal. Se o seu terminal for grande o suficiente, apenas a indicação "ls" fornecerá colunas, mas não usará todo o espaço (largura) do terminal. Eu fiz o terminal tão largo quanto a tela e "ls" apenas produziu 4 colunas. Problema é se você canalizar isso em "mais" você perde as colunas.

Em seguida, usei "ls -w200" no terminal tão largo quanto a tela (200 é a "largura de tela assumida"). Eu tenho 5 colunas (em vez de 4 anteriormente com apenas "ls") e que ocupa toda a largura da minha tela - todo mundo sabe que isso será afetado pelo tamanho dos nomes dos arquivos. Agora é mais uma coluna, em seguida, "ls" por si só e a largura da tela inteira é usada. Novamente, como "ls", se eu enviar o comando para "more" ("ls -w200 | more") você perde as colunas (ou seja, tem apenas uma coluna).

Então, isso é o mais próximo que você pode chegar de várias colunas.

Nota: Eu tentei o comando "ls -w2000" com a largura do terminal maximizada. A saída era uma linha com um "contorno" com dois espaços entre as entradas do diretório. Parece confuso, mas exibe todas as entradas no diretório no caminho mais curto.

    
por 28.05.2016 / 00:08
-1

Basta substituir o parâmetro width por 1:

ls -w 1

Funciona muito bem para mim!

    
por 09.03.2015 / 02:19