[英]How do you replace the first line that of a match with sed?
我目前正在嘗試替換以下文件中的行:
Music_location = /home/music
Music_location = /home/music
Pictures = /home/pictures
我怎么只更換第一個“/ home / music”而不說它是什么線? 謝謝!
使用awk你可以這樣做:
awk '!p{sub(/\/home\/music/, "/foo/bar"); p=1} 1' file
Music_location = /foo/bar
Music_location = /home/music
Pictures = /home/pictures
在sed中:
sed '0,/home\/music/s_/home/music_/foo/bar_' foo.txt
這從第0行開始,在找到/ home / music時停止,然后用/ foo / bar替換/ home / music。 在“s_ / home / music_ / foo / bar_”部分中,我將正常分隔符(斜杠)更改為下划線,以便我可以在正則表達式中使用斜杠。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.