如何从du -h输出的末尾删除文件名

pau*_*op6 9 linux awk sed

举个例子:

$ du -h file_size.txt
112K file_size.txt
Run Code Online (Sandbox Code Playgroud)

我如何从du -h的输出中删除文件名

我曾尝试使用sed搜索字符串(文件名)并将其替换为空,但它没有用(下面的命令)

du -h file_size.txt | sed 's/ 'file_size.txt'//'
Run Code Online (Sandbox Code Playgroud)

有人可以指出为什么这不会工作,或者更好的方法吗?

问候

保罗

Car*_*rum 14

你在该命令行中有一些不好的引用.最简单的可能是:

du -h file_size.txt | cut -f -1
Run Code Online (Sandbox Code Playgroud)

要修复命令行:

du -h file_size.txt | sed 's/file_size.txt//'
Run Code Online (Sandbox Code Playgroud)

由于您的帖子有awk标记:

du -h file_size.txt | awk '{ print $1 }'
Run Code Online (Sandbox Code Playgroud)

  • 或者`du -h file_size.txt | sed's /\s +.*//'` (2认同)

tux*_*21b 5

简单输出第一列.这是awk解决方案

du -h test.txt  | awk '{ print $1 }'
Run Code Online (Sandbox Code Playgroud)