У меня проблема с заменой команды внутри скрипта, ошибочная строка в скрипте выглядит так:
mail -s "$(hostname) on $(date)"
Его следует заменить на строку, подобную этой:
nail -r "sender@domain.com" -s "Subject" -S smtp=255.255.255.255
Но я не могу заставить sed сделать замену :) Для этой цели я написал небольшой скрипт:
#!/bin/bash
old="mail -s \"\$(hostname) on \$(date)"
new="nail -r \"sender@domain.com\" -s \"Subject\" -S smtp=255.255.255.255"
sed -i 's|$old|$new|' script.sh
У кого-нибудь есть совет?