Senaryo için "İlk Dünya Sorunları" varsa, bu olurdu.
Güncelleştirdiğim bir komut dosyasında aşağıdaki kodu var:
if [ $diffLines -eq 1 ]; then
dateLastChanged=$(stat --format '%y' /.bbdata | awk '{print $1" "$2}' | sed 's/\.[0-9]*//g')
mailx -r "Systems and Operations <sysadmin@[redacted].edu>" -s "Warning Stale BB Data" jadavis6@[redacted].edu <<EOI
Last Change: $dateLastChanged
This is an automated warning of stale data for the UNC-G Blackboard Snapshot process.
EOI
else
echo "$diffLines have changed"
fi
Betik sorunsuz e-posta gönderir, ancak mailx komutu bir if ifadesinin içine yerleştirilmiştir, bu yüzden iki seçenekle kalıyorum:
EOI
Yeni bir satıra koyun ve girinti düzenlerini ya da- Girinti ile devam edin ancak mailx'i e-postamı emmek için yankı ifadesi gibi bir şey kullanın.
Heredoc alternatiflerine açığım, ancak bunu çözmenin bir yolu varsa bu benim tercihim sözdizimdir.
$dateLastChanged
, örneklemeye hipen + tırnakları bir şey koyarsam, oraya koymaya çalıştığım değişkeni genişletmiyor , ancak tire ve tırnak işaretleri alıp EOI'yi bir Yeni hat tekrar genişlemeye başlar.