linux命令行替换文件内容

嘿,咱们聊聊Linux里的替换命令吧。
我混迹问答论坛这么多年,这俩命令可是家常便饭了。

先说tr命令,这玩意儿替换起来有点意思。
比如,你想把aa.txt文件里的所有“1 1 1 ”换成“2 2 2 2 2 2 ”,就得这样操作:[root@localhostss1 ] tr '1 1 1 ' '2 2 2 2 2 2 ' < aa>注意,这里的“<”是关键,它表示将aa.txt文件的内容作为输入。
而且,这回替换可不是单个字符对单个字符,而是“1 1 1 ”整个字符串对应“2 2 2 2 2 2 ”,别搞错了。

再来聊聊sed命令。
这个命令替换起来就简单多了。
比如,你想要把person.txt文件里的“wyf”全部替换成“wzw”,就用这个命令:[root@localhostss1 ] sed 's/wyf/wzw/g' ./person.txt。
这里的“s”代表替换,第一个“/”和第二个“/”之间是你要替换的文本“wyf”,第二个“/”和第三个“/”之间是替换后的文本“wzw”。
别忘了后面的“g”标志,它表示全局替换,就是替换掉文件中所有匹配的字符串。

温馨提醒一下,tr命令接文件时确实有点特殊,得用重定向符号“<”。
而且,替换的时候要小心,别把单个字符替换搞成了多个字符替换。
sed命令的语法格式也要注意,别搞反了。

操作的时候可能会有出入,毕竟每个人的系统环境都不一样。
有问题的话,私信我或者关注我,我会第一时间给你解答。
希望我的回答能帮到你!

Linux中vi的查找、替换、删除操作

查找:/abc Enter。
向上?abc Enter。
替换::s/vivian/sky/g。
删除:dd。
:1 ,1 0d。
测试:先小范围试。

操作前按Esc。

Linux中vi的查找、替换、删除操作

上周,我那个朋友在Linux下用vi编辑器,查找到他想要的内容,他输入“/abc”,然后按Enter,发现下一行出现了他想要的字符串。
他试着用n键继续查找,发现挺方便的。
后来,他又想替换一些内容,就输入了“:s/vivian/sky/”,结果发现当前行的第一个“vivian”被替换成了“sky”。
他还试了“:s/vivian/sky/g”,发现整行都被替换了。
接着,他想在多行替换,就输入了“:n,$s/vivian/sky/”,发现从第n行到最后一行都被替换了。
最后,他还尝试了全文替换,输入了“:%s/vivian/sky/”,发现每一行都被替换了。
他发现,使用或+作为分隔符可以避免误操作。
至于删除操作,他尝试了删除换行符,输入了“:%s/^V^M//”,但发现无效,后来用“tr-d&rsrcdest”命令解决了问题。
他还注意到了正则表达式规则和保存退出操作。
对了,他还想到了,如果不想保存修改,可以用“:q!”来退出。
算了,你看着办吧。