用单独文件中的文件名替换文件名

时间:2019-01-13 08:35:18

标签: unix

我的目录中有一些文件,我想用文件names.txt中的名称重命名。 names.txt中的名称与我要更改的目录中的名称相似。我可以在Unix上做到吗?

1 个答案:

答案 0 :(得分:0)

这样的脚本可以完成这项工作:

for i in `ls`
do
a=$(grep $i names.txt|awk '{print $2})
mv "$i" "$a"
done

假设names.txt中的格式为

source_name target_name

如果您的名称包含空格或其他特殊字符,则此脚本不太可靠。