根据文本文件重命名文件列表

Eli*_*Mak 9 rename

我有一个文件夹中的文件列表,我想根据文本文件对其进行重命名。例如:

这些是文件夹中的 5 个文件。

101_T1.nii
107_T1.nii 
109_T1.nii
118_T1.nii
120_T1.nii
Run Code Online (Sandbox Code Playgroud)

我希望使用包含相同顺序的新文件名列表的文本文件重命名它们,没有扩展名.nii

n01
n02
n03
n04
n05
Run Code Online (Sandbox Code Playgroud)

我该怎么做?

Seb*_*ian 11

一个班轮,此命令读取“列表”txt 并为文件的每一行解析。

for file in *.nii; do read line;  mv -v "${file}" "${line}";  done < list
Run Code Online (Sandbox Code Playgroud)


JRF*_*son 3

你可以这样做:

paste OLD NEW|while read OLD NEW;do mv ${OLD} ${NEW};done
Run Code Online (Sandbox Code Playgroud)

...其中名为“OLD”的文件包含旧文件名,名为“NEW”的文件具有新的匹配 (1:1) 名称。