我更換一個腳本里面的命令的問題,在腳本中出錯行看起來是這樣的:sed替換命令裏面的bash腳本?
nail -r "[email protected]" -s "Subject" -S smtp=255.255.255.255
但我:
mail -s "$(hostname) on $(date)"
應該有這樣的線來代替不能得到sed做替換:)我寫了一個小腳本,爲此目的:
#!/bin/bash
old="mail -s \"\$(hostname) on \$(date)"
new="nail -r \"[email protected]\" -s \"Subject\" -S smtp=255.255.255.255"
sed -i 's|$old|$new|' script.sh
有沒有人有任何建議?
謝謝你指出這個愚蠢的錯誤:)我一直在使用SEED取代和追加雙引號在需要的地方,厭倦了逃脫他們,所以我剛開始把在單引號中,並忘記它:) – f10bit 2009-09-17 12:23:34