unrararchive然后重命名生成的文件



我的目标是取消rar并重命名生成的文件。

test.rar包含

Oldname.txt
Oldname2.txt
...   - ...

提取后的输出应为:

Newname.txt
Newname2.txt
...   - ...

我做了这个代码,但它重命名了rar文件,而不是提取的文件

for f in *.rar
do
unrar x $f;
mv -- "$f" "$(tr '[a-z][A-Z]' '[n-za-m][N-ZA-M]' <<< "$f")" ; 
done

只重命名'rar'文件的原因是

"$f"是循环中"*.rar"集合的项,因此只有该项会被重命名。

for f in *.rar

您需要执行一个单独的循环来迭代提取的文件,然后重命名它们。

相关内容

最新更新