Files
BASH遞歸將js文件重命名為jsx
在 Mac 上,我正在將一個 create react 應用程序遷移到 vite,並且有很多 *.js 文件需要更改為 *.jsx。我一生中做過一次這本手冊,這對永恆來說已經足夠了。
我需要一個簡單易懂的腳本來最好在 mac 安裝上執行此操作,而無需安裝任何東西。
我發現了很多現有的例子,但我嘗試過的沒有一個完全有效。
編輯 - -
對於獎勵積分,這只發生在包含的文件中,
import React
因為這使得重構速度更快,手動檢查更少。
嘗試這個。
$ find . -name '*.js' -exec echo mv {} {}x \; mv ./a/a.js ./a/a.jsx mv ./a/z/z.js ./a/z/z.jsx mv ./b/b.js ./b/b.jsx $
一旦您對建議的命令的外觀感到滿意,只需刪除該
echo
部分,然後試一試。如果您有名為 .js 的目錄,這將不起作用並且需要
-type f
添加。獎勵積分方面
根據後續編輯,要將重命名限制為僅包含“import React”行的文件,請按照@Robert Smith 的建議使用以下解決方案。
find . -iname "*.js" -exec grep -q 'import React' {} \; -exec mv "{}" "{}x" \;