我需要遍历目录中的所有文件才能用另一个单词替换一个单词。例如,如果我有三个文件
test1.py
test2.py
test3.py
所有这些都使用word1
我想替换为word2
.我知道我可以 grep 目录,但我正在寻找一种更有效的方法来做到这一点。谁能告诉我该怎么做?
事实上,我认为我们可以用于:s
一个文件,但不能用于目录中的多个文件。是否有命令行或插件可以用来完成此类任务?
答案1
它应该有效:
sed -i 's/^.*looking_word/new_word/' nameOFfile.py
它应该帮助你理解: https://www.gnu.org/software/sed/manual/html_node/Regular-Expressions.html
答案2
这将备份所有 python 文件并在文件中永久进行更改。
sed -i.bak 's/word1/word2/g' *.py
-i[后缀], --in-place[=后缀]
就地编辑文件(如果提供扩展名,则进行备份)。默认操作模式是断开符号链接和硬链接。
s 命令(代表“替换”)的语法是:'s/regexp/replacement/flags'。
更多详细信息请点击这里http://www.computerhope.com/unix/used.htm