如何根據檔案名稱部分將檔案排序到子資料夾?

如何根據檔案名稱部分將檔案排序到子資料夾?

這些是目錄中的檔案:

Ford-Mustang-001.jpg
Ford-Mustang-002.jpg
Ford-Mustang-003.jpg

Chevy-Impala-001.jpg
Chevy-Impala-002.jpg
Chevy-Impala-003.jpg

我想將它們分類到子資料夾中:

/Mustang
/Impala

答案1

顯而易見的答案:

只需建立目錄並將文件放入其中即可。

mkdir Mustang Impala
mv *Mustang*.jpg Mustang/
mv *Impala*.jpg Impala/

這就是所謂的文件通配;這是一個 shell 功能。


如果您有大量文件並且需要建立許多不同的目錄來容納它們,請嘗試喬喬的回答

答案2

使用名稱(perl 重新命名器)

prename 'if(/(.+?)-(.+?)-(.*)/){mkdir $2; $_="$2/$_"}' *.jpg

答案3

awk {split $0, a, "-"; mkdir a[1]; mv $0 a[1]/}如果你想重新命名,我會使用 awk 分割檔名,你可以使用 mv 程式來完成此操作

相關內容