目前我的目录中有超过 70 个 tar 文件。为了保存每个文件的内容,我运行命令 tar -tvf file1.tar > file1_contents.txt
我想看看如何一次性处理 50 多个文件。
答案1
此示例使用 bash(或任何其他 POSIX shell);这是我的假设,因为您没有标记特定语言。切换到有问题的目录,然后:
for i in *.tar; do
tar tvf "$i" > "${i%.tar*}_contents.txt"
done
您确实应该了解您喜欢的脚本语言中的循环;他们非常强大。附带说明一下,对于某些tar
实现(例如bsdtar
GNU 或最新版本)tar
,这也适用于压缩的 tar 文件(tar.gz
例如tar.bz2
);您只需要更改*.tar
以反映其他文件即可。