我感覺自己像個新手。為什麼這不起作用?
$ echo foobar > textfile
$ sed /foo/bar/ textfile
sed: can't find label for jump to `ar/'
我也嘗試過sed "/foo/bar/" textfile
和sed '/foo/bar/' textfile
,它們都會產生相同的錯誤。
透過 bash 使用 ubuntu 8.04 和 GNU sed 版本 4.1.5。
答案1
試試這個:sed 's/foo/bar/' textfile
。
- 聲明周圍的引號是很好的做法
s
為替代品。這是您要執行的命令。是被替換的foo
搜尋詞。bar
網路上關於sed的資料很多。例如。http://www.catonmat.net/blog/sed-one-liners-explained-part-one/
答案2
你需要發出sed
命令;它將您提供的內容解析為搜尋模式,/foo/
後面跟著命令b ar/
(分支到 label ar/
)。您可能的意思是 's/foo/bar/' 意思是foo
用bar
每行中的第一個實例取代。