我想知道如何在多個文件中找到和替換特定文本,例如連結教程中的 Notepad++ 中的文本。
答案1
在這裡,我使用 sed 將目錄 /home/user/directory/ 中每個副檔名為 c 的檔案中出現的所有單字「cybernetnews」替換為「cybernet」。
find /home/user/directory -name \*.c -exec sed -i "s/cybernetnews/cybernet/g" {} \;
更通用的變體,您從執行目錄遞歸搜尋並僅對常規、可讀、可寫入檔案進行操作:
find ./ -type f -readable -writable -exec sed -i "s/cybernetnews/cybernet/g" {} \;
答案2
流編輯器 sed 是此類工作的強大實用程序,是我的首選,但是,如果您想使用基於 Ubuntu 的本機應用程序從普通文本編輯器執行此操作,我建議您看看 Jedit ,它可以在在儲存庫中找到,並且可以透過在控制台中鍵入以下內容來安裝:
sudo apt-get install jedit
啟動jedit,按一下搜尋選單項,在選單清單中按一下「在目錄中搜尋」項,您將看到以下對話方塊:
這與Notepad++類似,做同樣的事情,我相信這就是你想要的。
答案3
另一個 GUI 選項是正則器:
答案4
檢查與傑尼,它是 Linux 的完美 NPP 替代品。您完全可以做到這一點,而且還可以使用正規表示式。