如何查找所有带有零的文件,包括带有空格的文件名?

如何查找所有带有零的文件,包括带有空格的文件名?

在这个答案中https://askubuntu.com/a/216889/50183我找到了一个列出所有文件的命令,用零填充:

find -type f -printf "%S\t%p\n" 2>/dev/null | awk '{if ($1 < 1.0) print $1 $2}'

不幸的是,它不能捕获带有空格的文件名和路径。

如何提高?

答案1

这有点像是转移注意力——find捕获文件并正确打印名称。您需要做的就是awk打印整个记录,而不仅仅是前两个字段:

find -type f -printf "%S\t%p\n" 2>/dev/null | awk '{if ($1 < 1.0) print $0}'

或者,告诉它仅在制表符上进行拆分,而不是任何空格:

find -type f -printf "%S\t%p\n" 2>/dev/null | awk -F"\t" '{if ($1 < 1.0) print $1 $2}'

相关内容