我使用SED用破折號,以取代file.txt的每一行的第二個逗號( - ):爲什麼sed刪除我的標題行?
this,is_the,header_row
a,1,2
b,1,2
c,1,2
while read line; do
sed 's/,/-/2' > file_new.txt
done < file.txt
預期輸出:
this,is_the-header_row
a,1-2
b,1-2
c,1-2
我得到什麼:
a,1-2
b,1-2
c,1-2
爲什麼sed刪除我的標題行?
(道歉,如果這是一個重複的問題。搜索的 變化「的sed刪除第一行」只返回的變化「如何刪除第一行」)
GNU的bash,版本4.3.27(1) -release下(x86_64-蘋果darwin13.4.0)
下面hek2mgl的答案是最正確的;這裏有一個好處:如果你想從流中進入(例如通過'cat'),你可以這樣做:'cat file.txt | sed's /,/ -/2'> file_new.txt' – zamnuts 2014-10-03 19:29:25