我在一个文件夹中有多个文件,例如:
1.txt
2.txt
3.txt
...
100.txt
我想使用 7z 压缩单个文件,生成 1.7z、2.7z 3.7z...我正在尝试使用这个:
for file in {1..100} ./{1..100}.txt; do 7z a $file; done
但没有运气。
或者,有没有办法自动使用 txt 名称?
答案1
最简单的方法可能是
for file in {1..100}; do 7z a "$file.7z" "$file.txt"; done
或者,您可以使用参数扩展${var%suf}
删除后缀的形式例如
for file in {1..100}.txt; do 7z a "${file%.txt}.7z" "$file"; done