用文件夹 B 的内容重命名文件夹 A 的内容?

问题描述 投票:0回答:1

我有两个文件数量相同的文件夹。我希望它们具有相同的文件名,即使文件在技术上不同(高分辨率与低分辨率,但其他基本内容相同)。例如,文件夹 A 可能如下所示:

file1  
file2  
file3

和文件夹 B,具有更理想的名称:

File 1 - The stuff  
File 2 - More stuff  
File 3 - Great stuff

如何用文件夹B中的文件名重命名文件夹A中的所有文件?由于文件名中的编号系统,假设它们已经有序。

我有 Windows 10 和 Linux (Debian) 可供使用。

rename file-rename batch-rename
1个回答
1
投票

像这样:

$ tree
.
├── A
│   ├── file1
│   ├── file2
│   └── file3
└── B
    ├── File 1 - The stuff
    ├── File 2 - More stuff
    └── File 3 - Great stuff

2 directories, 6 files

在测试/试运行模式下:

$ cd B
$ for i; do lc=${i,,}; lc=${lc/ //}; echo "mv ../A/${lc%% *} => ../A/$i"; done 
mv ../A/file/1 => ../A/File 1 - The stuff
mv ../A/file/2 => ../A/File 2 - More stuff
mv ../A/file/3 => ../A/File 3 - Great stuff

真实重命名:

$ for i; do lc=${i,,}; lc=${lc/ //}; mv ../A/"${lc%% *}" ../A/"$i"; done 
© www.soinside.com 2019 - 2024. All rights reserved.