-1

我将如何循环此行以将所有 jpg 打印到文本文件?

stat --printf="%s" *.jpg >> results.txt

您如何还能够根据文件大小打印 results.txt?代码看起来如何?文件的确切大小是 40318

4

2 回答 2

2

您已经在打印所有 *.jpg 文件的结果。唯一的问题是,通过使用--printf="%s"您将输出格式更改为stat仅打印大小(每个项目之间没有换行符或空格)。

请尝试:

stat --printf="%s\n" *.jpg >> results.txt
#  OR
stat -c "%s" *.jpg >> results.txt

要在大小旁边打印文件名,请尝试:

stat --printf="%n %s\n" *.jpg >> results.txt
# OR
stat -c "%n %s" *.jpg >> results.txt
于 2012-09-14T14:31:39.573 回答
0

据我了解,您希望将所有 .jpg 文件的大小和文件名打印到文本文件中。您可以结合使用findls来执行此操作,然后使用awk格式化输出:

    find . -name "*.jpg" | xargs ls -ahl $1 | awk '{print $5" "$9}' > results.txt

请注意,该脚本将从您使用find指定的目录中递归搜索

于 2012-09-14T15:26:07.100 回答