Command-Line
替換文件中的單詞
假設必須在由句子組成的文件(不是單詞列表)中
child
替換單詞。son
這不是直接的字元串替換;例如,不應發生以下情況:
children
不應更改為sonren
但應該發生以下情況:
child.
應該改為son.
child!
應該改為son!
基本上,要替換的文本必須是一個獨立的單詞,並且必須保留單詞分隔符。
如果不對每個可能的單詞分隔符進行硬編碼,如何做到這一點?
您可以使用sed命令實現此目的:
sed -i 's/\<child\>/son/' /path/to/your/file
-一世
$$ SUFFIX $$, - 到位$$ =SUFFIX $$ 就地編輯文件(如果提供副檔名,則進行備份)。預設操作模式是斷開符號連結和硬連結。這可以通過 –follow-symlinks 和 –copy 進行更改。
考慮到您的範例,使用以下測試文件:
child child. child! children
執行命令,你會得到:
son son. son! children
編輯:
child
要管理在同一行上 有多個單詞的情況,您必須g
在命令中添加:sed -i 's/\<child\>/son/g' /path/to/your/file