O Linux mostra apenas a data e o tamanho do nome do arquivo

54

Como posso usar ls no linux para obter uma lista de nomes de arquivos apenas com data e tamanho. Não preciso ver outras informações, como proprietário ou permissão. Isso é possível?

    
por Pinkie 07.10.2011 / 05:33

9 respostas

83

Por que não usar stat em vez de ls ?

stat -c "%y %s %n" *
    
por 07.10.2011 / 08:50
27

Você pode obter muito controle sobre como listar arquivos com o utilitário find . ls realmente não permite que você especifique as colunas desejadas.

Por exemplo:

$ find . -maxdepth 1 -printf '%CY%Cm%Cd.%CH%CM\t%s\t%f\n'
20111007.0601   4096    .
20111007.0601   2   b
20111001.1322   4096    a

O argumento para a ação printf é detalhado na manpage. Você pode escolher informações de tempo diferentes, o tamanho desejado (tamanho de arquivo ou blocos de disco usados), etc. Você também pode tornar isso seguro para nomes de arquivos incomuns, caso seja necessário processamento adicional.

    
por 07.10.2011 / 06:50
18

Você sempre pode usar outro utilitário como awk para formatar a saída de ls 1 :

/bin/ls -ls | awk '{print $7,$8,$9}'


1.Sim, geralmente, você não deve analisar a saída de ls mas, nesse caso, a pergunta especificamente chama por isso ...

    
por 07.10.2011 / 07:09
5

Você também pode usar o comando 'date'. É muito fácil de usar:

date -r [file name]

    
por 18.02.2014 / 14:16
1

onde espaço é definido como o separador e f6 significa campo 6

ls -lt | cut -d" " -f6-
    
por 15.10.2013 / 17:49
1

Se você deseja usar ls, mas preservar o tamanho adequado, você pode usar:

ls -Ss1pq --block-size=1
    
por 24.06.2018 / 19:37
-1

Você pode canalizar dois comandos

ls -l|cut -d" " -f5
    
por 24.12.2015 / 12:19
-1

A resposta mais simples é usar

 ls -1

observe que é one não é l. Isso funciona no Ubuntu, mostrando apenas o nome dos tempos.

    
por 31.07.2017 / 18:26
-2

ls -s1 retorna o tamanho e o nome do arquivo apenas no AIX, não tendo certeza sobre o Linux

    
por 13.06.2017 / 20:54