-4
我必須在文件中的列。一個是一個值的名稱,另一個是相應的值。我想更改分配給特定名稱的值。所以,我有 INFILE:bash-無法更改文件中的行
TB 10
Abs(M_1) 100
我用盡這(unsuccesfully)更改:
M1_0=$(grep "Abs(M_1)" $infile)
awk '{ gsub("$M1_0", "Abs(M_1) $M1") };{print}' $infile > $infile.new
mv $infile.new $infile
當我定義M1是不同的每iteration.I沒有得到任何錯誤,但文件值不會更改。我也嘗試了幾十個sed配置。我不明白我做錯了什麼。
你從來沒有關閉'$('從第1行... ... – Siguza
抱歉,這是一個錯字。如果我沒有關閉它,bash會抱怨。 –
'M1_0 = $(grep ...)'是錯誤的。在'='後面有一個空格。請檢查http://www.shellcheck.net/ – fedorqui