我在.txt文件中有一些文件名,在另一个.txt文件中有一些其他文件名。我想逐行从文本文件中的文件名重命名存储在该文件夹中的文件。
FROM:
$cat oldname.txt
file1.mp4
file2.mp4
TO:
$cat newname.txt
video1.mp4
video2.mp4
我想要一些可以逐行执行mv
命令的bash脚本。
喜欢
$mv file1.mp4 video1.mp4
答案 0 :(得分:1)
在文件上使用适当的循环以bash
重命名。在不同的文件描述符中单独打开文件。
#!/bin/bash
while read oldname <&3 && read newname <&4
do
mv "$oldname" "$newname"
done 3<oldname.txt 4<newname.txt
答案 1 :(得分:0)
尝试:
while read oldname; do
read -u 3 newname
echo mv $oldname $newname
done < oldname.txt 3< newname.txt
这只会回应命令。如果您喜欢结果,请省略echo
。