簡體   English   中英

Bash - 如何列出文件大小(以字節為單位)

[英]Bash - how to list files with size in bytes

我想使用 ls 命令來 output 目錄中的文件,但是我需要以字節為單位的文件大小。

這可以用 ls 命令嗎?

在類似的問題上,我發現這個ls -l --block-size=M以兆字節為單位輸出文件大小,但是我似乎無法讓它只使用字節。

如果您正在尋找有關文件的統計信息,那么您希望使用stat而不是ls 例如:

stat --format=%n:%s *
$ ls -l foo.tar.gz
-rw-r--r-- 1 james james 68964464 Mar 12  2014 foo.tar.gz

在我的ls (GNU coreutils) 8.26

$ ls -s --block-size=1 foo.tar.gz
68972544 foo.tar.gz

大多數情況下ls -l就足夠了。

ls -l | tr -s " " | cut -d " " -f5,9-

tr -s " "用一個空格依次替換多個空格

cut -d " " -f5,9-將分隔符設置為空格,然后打印字段 5 和 9。 從 9 開始是因為文件名中可以​​有空格,只需打印字段 9 即可;y 得到第一個單詞

獎勵:如果你想切換輸出順序($filename $bytes),你可以添加一個

| sed 's_\\([0-9]*\\) \\(.*\\)_\\2 \\1_'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM