我想用文本文件中的另一个词替换一个词。
文件.txt :
alireza fallah
Run Code Online (Sandbox Code Playgroud)
我的代码:
cat file.txt | tr ali ALI
Run Code Online (Sandbox Code Playgroud)
但我明白了:
ALI fALLAh
Run Code Online (Sandbox Code Playgroud)
它将所有 'a's 替换为 'A' ,'l's 到 'L' 和 'i's 到 'I' 。
有什么方法可以将 'ali' 替换为 'ALI' 吗?
使用 GNU 可以更轻松地完成此任务sed
:
$ sed -i 's/ali/ALI/' file.txt
Run Code Online (Sandbox Code Playgroud)
因为tr
操作字符集而不是字符串。
为避免在回显时出现不需要的替换,请尝试指定要替换的单词的确切位置,或仅匹配您感兴趣的字符串的正则表达式:
$ printf "cali\nali\nwali\nmali.\n" | grep -E '^ali' | tr ali ALI
ALI
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
35668 次 |
最近记录: |