實施例來替換第一個字符在管分隔文件的第二列:在下面的例子 ,我需要更換的「1」第一次出現在第二列到「2」如何使用AWK和sed命令
Col1|col2
1001|1003
1002|1004
1003|1005
我的輸出應該是這樣的:提前
Col1|col2
1001|2003
1002|2004
1003|2005
謝謝..!
實施例來替換第一個字符在管分隔文件的第二列:在下面的例子 ,我需要更換的「1」第一次出現在第二列到「2」如何使用AWK和sed命令
Col1|col2
1001|1003
1002|1004
1003|1005
我的輸出應該是這樣的:提前
Col1|col2
1001|2003
1002|2004
1003|2005
謝謝..!
sed 's/|1/|2/' file
如果這不是你需要的,那麼編輯你的問題來澄清你的要求。
AWK替代(更換第一發生的1
在第二列2
):
awk -F'|' 'NR>1{ sub("1","2",$2) }1' OFS='|' file
輸出:
Col1|col2
1001|2003
1002|2004
1003|2005
awk -F\| '{sub(/1/,"2",$2)}1' OFS=\| file
Col1|col2
1001|2003
1002|2004
1003|2005
是否需要更換第一個字符(如你的主題中所述)或t他第一次出現「1」(正如你的文字所述)?如果第一個字符有時可能不是1,那麼很顯然,請在您的示例輸入/輸出中包含該案例。 [編輯]你的問題,以顯示你已經嘗試過。 –