如何用du提取文件大小

Ben*_*rel 5 shell disk-usage text-processing

我正在使用du打包程序脚本获取结果存档的文件大小:

> du -smh archive.zip
51M    archive.zip
Run Code Online (Sandbox Code Playgroud)

我想只将该51M部分分配给一个变量,以便能够打印:

Archive size: 51M
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

slm*_*slm 6

你可以这样做:

$ variable=$(du -smh archive.zip | awk '{print $1}')
Run Code Online (Sandbox Code Playgroud)

细节

awk将解析输出,将其分解为列。您只需要第 1 列的结果。$( .. ) 代码将运行命令并返回其结果。