我更换一个脚本里面的命令的问题,在脚本中出错行看起来是这样的: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