複数のファイル入力に7zと「for file」を使用するには?

複数のファイル入力に7zと「for file」を使用するには?

1つのフォルダに複数のファイルがあります。たとえば、次のようになります。

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

おすすめ記事