簡體   English   中英

如何僅從“du”獲取文件夾大小?

[英]How to get only folder size from "du"?

我需要獲取文件夾的大小,以便進行比較。 但是我得到了帶有路徑的文件夾大小。 如何只獲取我的文件夾的大小? 我在bash中使用以下命令:

size=`du -b --max-depth=0  ./main_folder/data`

Output:

12260550 ./main_folder/data

預期的:

12260550

由於您嘗試將大小存儲在變量中,因此您可以只取第一個值並忽略其余為:

read size _ < <(du -b --max-depth=0 main_folder/data)

echo "size=$size"

cut是用於對字符串進行此類操作的專用命令。

size=`du -b --max-depth=0  ./main_folder/data | cut -f1`

這里-f1表示“剪切第一個字段”(在管道輸入的每一行上,但只有一行)。

對我來說最有意義的回答如下

du -b --max-depth=0  ./main_folder/data | awk '{print $1;}'

返回輸出的第一個字。 享受。

du -sh ./main_folder/data | awk '{print $1;}'

s -> summarizes all the contents of the folder

h -> return output in human readable form

我喜歡這個班輪:

myvar=$(du -b --max-depth=0 ./main_folder/data|cut -f1 -d$'\t')

暫無
暫無

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

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