Sed
使用sed在匹配模式的左側插入字元?
這是作為輸入的數據文件。
1 2 2 979 data raw 32j 23 32323
輸出:
/* 1 /* 2 /* 2 /* 979 data raw /* 32j /* 23 /* 32323
如何使用 sed 獲得所需的輸出?匹配模式的正則表達式是**^$$ 0-9 $$***.
我猜你想要的是註釋掉以數字開頭的行。這不是什麼
^[0-9]*
意思,這將匹配所有內容,包括空行或根本沒有數字的行,因為*
意味著“0 或更多”,因此它將匹配文件的每一行。因此,要註釋以數字開頭的行,您可以使用:
$ sed '/^[0-9]/ s|^|/* |' file /* 1 /* 2 /* 2 /* 979 data raw /* 32j /* 23 /* 32323
或者:
$ sed -E 's|^([0-9])|/* \1|' file /* 1 /* 2 /* 2 /* 979 data raw /* 32j /* 23 /* 32323