如何在 Ubuntu 中使用命令行查找和替换文件中的文本
答案:使用 sed
实用程序
sed
实用程序是一种流编辑器,可用于读取或编辑一个或多个文本文件。
您可以使用以下语法在 Ubuntu 中使用终端查找和替换文件中的文本。
sed -i 's/original/new/gi' filename.txt
选项 -i
(就地)告诉 sed
将更改写入原始文件。
替换表达式具有以下含义:
s
: 替换表达式的开头。original
: 表示要替换的单词或子字符串(也可以是 正则表达式)。new
: 表示替换词或子字符串。g
: 代表全局,即替换所有出现。i
: 表示忽略大小写,即不区分大小写的搜索和替换。
例如,假设您当前的工作目录是 /var/www
,并且其中有一个名为"sample.txt"的文本文件,其中只包含文本"Twinkle Twinkle Little Star"。
现在,如果您想用"sample.txt"文件中的"Shiny"一词替换每个出现的"Twinkle"一词,只需使用以下 sed
命令即可。
sed -i 's/Twinkle/Shiny/gi' sample.txt
或者,如果您更喜欢绝对路径,可以运行以下命令。
sed -i 's/Twinkle/Shiny/gi' /var/www/sample.txt
这两个命令将具有相同的效果,因为当您使用绝对路径时,当前工作目录并不重要。 任何以正斜杠 /
开头的路径都是绝对路径。
FAQ 相关问题解答
以下是与此主题相关的更多常见问题解答:
Advertisements