我想這個awk命令awk "{print NR, $0}" file1.csv
,但它添加行號後面有一個空格,而不是逗號。不能行號添加到每個行的開頭使用awk
我試過其他的命令具有相同的結果
awk "{print NR "," $0}" file1.csv
而且我有一個錯誤的地方我用了一個單引號。
我使用Gawk的Windows上。我錯過了什麼?
謝謝
我想這個awk命令awk "{print NR, $0}" file1.csv
,但它添加行號後面有一個空格,而不是逗號。不能行號添加到每個行的開頭使用awk
我試過其他的命令具有相同的結果
awk "{print NR "," $0}" file1.csv
而且我有一個錯誤的地方我用了一個單引號。
我使用Gawk的Windows上。我錯過了什麼?
謝謝
謝謝大家對你的答案,但我發現one的工作:上窗口我有雙引號中逃脫:
awk "{print NR \",\" $0}" file1.csv
試試這個:
awk '{print NR "," $0}' file1.csv
例子:
[email protected]:~$ cat ff
aa, aa, aa, aa
aa, aa, aa, aa
aa, aa, aa, aa
aa, aa, aa, aa
aa, aa, aa, aa
aa, aa, aa, aa
[email protected]:~$ awk '{print NR "," $0}' ff
1,aa, aa, aa, aa
2,aa, aa, aa, aa
3,aa, aa, aa, aa
4,aa, aa, aa, aa
5,aa, aa, aa, aa
6,aa, aa, aa, aa
我已經試過了,但窗戶拋出,無論我用一個單引號 – 2014-12-02 08:27:39
就包括單引號代替雙引號裏面的awk的代碼。
awk '{print NR "," $0}' file1.csv
OR
awk -v FS="," -v OFS="," "{print NR,$0}" file.csv
和你以前的命令awk "{print NR, $0}" file1.csv
顯示空間,而不是逗號,因爲在打印部分默認,
將打印輸出字段分隔符變量的值。默認值爲OFS
,默認值爲空格。所以它顯示的是空格而不是逗號。
我已經試過了一個錯誤,但Windows拋出,無論我用一個單引號的錯誤 – 2014-12-02 08:28:43
使用"{print NR, $0}"
這樣的逗號您是printing之後每項打印field separator。
在awk "{print NR "," $0}"
中使用雙引號,你是分裂該命令用逗號。
你必須使用整個awk命令單引號:
awk '{print NR","$0}' file1.csv
或者使用printf聲明
awk '{printf("%s,$0\n", NR,$0)}' f
的,
在awk
是默認的字段分隔符,一個空間。
爲了得到你想要chnage的輸出字段分隔符是什麼。
awk -vOFS="," '{print NR, $0}' file1.csv
,答案沒有實際解釋解決的問題,是你曾經使用過的擴大shell變量(與'$'開始,如果你還看,其中雙qoutes然後你會發現逗號雙引號。沒有加引號,這意味着它是由'awk'爲逗號而這又看到代表'OFS'(空間) – 2014-12-02 08:29:43
只需使用單引號:'AWK「{打印NR‘’$ 0}」 file' – fedorqui 2014-12-02 08:36:11