當我們有大量的檔案需要批量重新命名時,手動一個一個改不僅耗時,也容易出錯。
在這篇文章中,將介紹兩種方法來批量重新命名檔案。

背景說明

在整理我自己舊的Logseq筆記合併到新的Obsidian中的時候,為了解決Logseq和Obsidian中預設針對日記檔案命名方式的不同的問題

  • Logseq使用下劃線(_)命名
  • Obsidian使用橫線(-)命名

為了方便後續的操作,我需要把這些原本使用下劃線命名的檔案批量重新命名成橫線。

在Windows中有Power automate可以使用,那在Mac中要如何進行呢?我這邊採用bash腳本的方式進行。

批量重新命名的方法

方法1:用內建的mv指令

透過bash的for迴圈和mv指令,我們可以輕鬆地達成這個需求。

for file in *_*.md; do
    mv "$file" "${file//_/-}"
done

方法2:使用rename插件

除了上述的方法,我們也可以使用rename這個插件來達到相同的效果。但請注意,這個插件需要先行安裝。

rename 's/_/-/g' *.md

使用這兩種方法,就可以非常快速的將所有筆記的檔名中的下劃線都替換成了橫線。

成果展示


以上就是使用bash指令批量重新命名檔案的經驗分享,希望能對有相同需求的人提供一些參考。