0
僅供參考,我是一個awk/gsub noob。awk/gsub - 顯示字符串之前,然後之前,然後之前gsub
我有一個SVN轉儲我想要創建,格式users.txt ...
user.name = user name <[email protected]>
這裏就是我得...
awk '/svn:author/ { getline; getline; gsub("[\.]", " ", $1); print $0, " = ", $1 , " <", $0, "@foo.com>"}' svn_dmp | sort | uniq
不幸的是,它正在改變$0
值,並移除所有.
,所以我得到...
mr foo = mr foo <mr [email protected]>
我希望gsub
會將新字符串寫入$1
並保留$0
。如何僅在中間的mr.foo
中交換點的空間?
'$ 0'是整條生產線,其中包括'$ 1',所以當你改變'$ 1'你改變的'$ 0'這部分也是如此。 – jas
在使用它之前,請務必閱讀並完全理解關於getline的所有警告和gothcas,然後通常您不會。無論如何,你的問題不需要getline,你使用它的方式是錯誤的。發佈幾行樣本輸入和預期輸出,我們可以幫助您。 –