Como faço para 'ls' mostrar tamanhos de arquivo em megabytes?

392

Quais comandos eu preciso para o ls do Linux mostrar o tamanho do arquivo em MB?

    
por Paul Sheldrake 08.02.2013 / 09:31

4 respostas

457

ls -l --block-size=M fornecerá uma lista longa de formatos (necessária para ver o tamanho do arquivo) e tamanhos reduzidos de arquivos para o MiB mais próximo.

Se você quiser unidades MB (10 ^ 6 bytes) em vez de MiB (2 ^ 20 bytes), use --block-size=MB .

Se você não quiser o sufixo M anexado ao tamanho do arquivo, poderá usar algo como --block-size=1M . Obrigado Stéphane Chazelas por sugerir isso.

Se você quiser apenas tamanhos de arquivo em unidades "razoáveis", em vez de especificamente megabytes , use -lh para obter uma listagem de formato longo e legível por humanos apresentação de tamanho de arquivo. Isso usará unidades de tamanho de arquivo para manter os tamanhos dos arquivos apresentados com cerca de 1 a 3 dígitos (assim, você verá tamanhos de arquivo como 6.1K , 151K , 7.1M , 15M , 1.5G e assim por diante.

O parâmetro --block-size é descrito na página man de ls; man ls e procure por SIZE . Ele também permite unidades diferentes de MB / MiB e, a partir da aparência (também não tentei), tamanhos arbitrários de blocos (assim, você pode ver o tamanho do arquivo como um número de blocos de 429 bytes se quiser). para).

Observe que --block-size e -h são extensões do GNU em cima de % co_de do grupo aberto % , portanto, isso pode não funcionar se você não tiver uma área de usuário GNU (que a maioria das instalações do Linux faz). O ls do GNU Coreutils 8.5 suporta --block-size e -h como descrito acima. Obrigado ao kojiro por apontar isso.

    
por 08.02.2013 / 09:40
350

ls -lh fornece tamanhos de arquivos legíveis por humanos, formato longo.

Ele usa os sufixos k, M, G e T (ou nenhum sufixo para bytes), conforme necessário, para que o número permaneça pequeno, por exemplo, 1.4K ou 178M .

-h é uma extensão do GNU coreutils, não POSIX da linha de base.

Observe que isso não responde a pergunta exatamente como solicitado. Se você quiser tamanhos estritamente em MiB, mesmo para arquivos pequenos ou gigantescos, A resposta de Michael Kjörling faz isso para GNU coreutils ls .

    
por 08.02.2013 / 09:35
38

ls -lhS classificar por tamanho, em formato legível por humanos

    
por 04.05.2016 / 21:00
8

E esta é a opção para listar tudo em uma ordem de diretório por tamanho de arquivo (ainda legível por humanos) crescente.

ls -lSrh
    
por 10.08.2017 / 13:49

Tags