Linux'un lsdosya boyutunu MB olarak göstermesi için hangi komutlara ihtiyacım var ?
Linux'un lsdosya boyutunu MB olarak göstermesi için hangi komutlara ihtiyacım var ?
Yanıtlar:
ls -l --block-size=MSize uzun formatlı bir liste (aslında dosya boyutunu görmeniz gerekir) ve en yakın MiB'ye kadar yuvarlak boyutlarda dosya verir.
MiB (2 ^ 20 bayt) birimi --block-size=MByerine MB (10 ^ 6 bayt) istiyorsanız, bunun yerine kullanın.
MSonekin dosya boyutuna eklenmesini istemiyorsanız, bunun gibi bir şey kullanabilirsiniz --block-size=1M. Bunu önerdiğiniz için teşekkürler Stéphane Chazelas .
Dosya boyutlarını özellikle megabaytlardan ziyade "makul" birimlerde istiyorsanız, -lhuzun formatlı bir liste ve insan tarafından okunabilen dosya boyutu sunumu elde etmek için kullanabilirsiniz . (Böylece gibi dosya boyutu görürsünüz Bu yaklaşık 1-3 hane ile sunulan dosya boyutlarını tutmak için dosya boyutu birimlerini kullanacak 6.1K, 151K, 7.1M, 15M, 1.5Gvb.
Bu --block-sizeparametre man sayfasında ls; man lsve arayın SIZE. MB / MiB dışındaki birimlere de izin verir ve görünüşünden (bunu denemedim) keyfi blok boyutları da (böylece, dosya boyutunu isterseniz 429 baytlık bir blok sayısı olarak görebilirsiniz. ) için.
Her ikisinin de --block-sizeve Open Group'un en-h üstünde GNU eklentileri olduğuna dikkat edinls , bu nedenle (çoğu Linux kurulumunun yaptığı) bir GNU kullanıcısı değilseniz bu çalışmayabilir. lsGNU coreutils 8.5 --block-boyutu ve yukarıda tarif edildiği gibi h destekler. Bunu işaret ettiği için kojiro'ya teşekkürler .
lsmu? Standardınls böyle bir argümanı yoktur. İle xsi uzantısı ls vardır -so blokların sayısını rapor yapar bayrağı, fakat standart bir bayrak yoktur --block-size.
--block-sizeDebian Squeeze sistemime yüklü olan coreutils 8.5'e sahip. Soru açıkça Linux için olduğu ve başka bir şey belirtmediği için, GNU coreutils'in etrafında merkezli bir kullanıcı alanı olduğunu kabul ediyorum. Bunu açıklığa kavuşturmak için cevabı güncelledim. (Ayrıca, Açık Grup ls ya -h sahip görünmemektedir. :))
--block-size, bir GNU uzantısıdır. Mac OS X’in GNU’yu kullanmadığından şüpheleniyorum ls.
ls -lh insan tarafından okunabilen dosya boyutlarını, uzun formatı verir.
Gerektiği gibi k, M, G ve T soneklerini (veya bayt için sonek yok) kullanır, böylece sayı küçük kalır, örneğin 1.4Kveya 178M.
-h POSIX taban çizgisinin değil, bir GNU coreutils uzantısıdır.
Bunun soruyu tam olarak sorulduğu gibi yanıtlamadığını unutmayın. Küçük boyutlarda veya devasa dosyalar için bile kesinlikle MiB'dels boyutlar istiyorsanız, Michael Kjörling'in cevabı GNU coreutils için yapar .
hyazmaktan daha kolay--block-size=M
ls -lİnsan değilse, kim kullanıyor ? : p
ls -l, zamanın% 99'unu şeyler yapmak için yanlış yoldur. unix.stackexchange.com/questions/128985/why-not-parse-ls adresini ziyaret edin . Bu% 1 cömert davranıyor ve bir kerelik kullanım için etkileşimli olarak yazdığınız tek gömleklerle sınırlı, bilinmeyen dosya adlarında tekrar tekrar kullanacağınız bir komut dosyası değil.
ls -lhS okunabilir biçimde, boyuta göre sırala
ls -lhsoruyu gerçekten yanıtlamadığı nedenlerden dolayı cevap hakkındaki yorumları inceleyin .
Ve bu, her şeyi bir dizin sırasına göre artan dosya boyutuna göre (yine de okunabilir) listeleme seçeneğidir.
ls -lSrh
--block-size=Molabilir :Mboyutun yanında bir sonek görüntülenmesine neden olur ve--block-size=1Matlamak için kullanabilirsiniz . Bunun için GNU l'lere ihtiyacınız olduğunu belirtmek faydalı olabilir (çoğu gömülü olmayan Linux sistemlerinde GNU l'lar olacaktır).