我用正則表達式在之前sed和有點用的awk,但我不確定確切的語法我需要在這裏...如何在Awk或Sed中將數學與正則表達式混合使用?
我想要做的事,如:
sed -i 's/restartfreq\([\s]\)*\([0-9]\)*/restartfreq\1$((\2/2))/2/g' \
my_file.conf
其中第二場比賽除以2,然後放回內聯編輯。
我讀過雖然該sed不能做數學。
我可以用sed或awk單獨乾淨嗎?建議請。
編輯1
我想我詢問的意思是足夠簡單,但我想我可能沒有給我想要修改的數據足夠好的樣本。這裏是我的* .conf文件中的行的例子,我想在內部編輯:
restartfreq 1250 ;# 2500steps = every 1.25 ps
我已經在下面發佈了一個解決方案。我收到的兩個答案都是關於向終端打印文本,而不是內聯編輯文件。我儘量避免回答我自己的問題,但在這種情況下,我收到的答案都沒有真正做到我所要求的(編輯文件,而不僅僅是打印經過編輯的行),而且它們比我的解決方案和/或需要更多的Linux要長得多除awk或sed之外的程序。
雖然我很欣賞幫助和反饋! :)
注:作爲我通常的聲明,這不是一個家庭作業問題,我是一個化學工程研究員。
或許,這將有助於查看了一下樣本數據和期望的輸出是什麼樣子去做。 – 2010-09-10 16:34:06
restartfreq 1250;#2500steps =每1.25 ps – 2010-09-10 18:31:21