我無法在命令列上執行最基本的 sed 命令

我無法在命令列上執行最基本的 sed 命令

我感覺自己像個新手。為什麼這不起作用?

$ echo foobar > textfile
$ sed /foo/bar/ textfile
sed: can't find label for jump to `ar/'

我也嘗試過sed "/foo/bar/" textfilesed '/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/' 意思是foobar每行中的第一個實例取代。

相關內容