Varsayılan davranışı tamamlandığında bir e-posta göndermek olan bir balık kabuk betiğiyim. Komut satırından bir nomail
argümanına yanıt vermek için değiştirmek istiyorum. Yani, örneğin, normalde komut dosyası çalıştıran bir e-posta üretecektir:İsteğe Bağlı Bir Bağımsız Değişkenle Balık Kabuğu Komut Dosyası Yazma
michaelmichael: ~/bin/myscript
Ama nomail
anahtarı ile çalıştırırsanız, bu onay e-postası göndermek olmaz:
michaelmichael: ~/bin/myscript nomail
ise Komut dosyasını nomail
argümanıyla çalıştırıyorum, iyi çalışıyor. nomail
olmadan, tanımsızdır ve bir hata verir. Balık kabuğu belgelerini araştırdım ama işe yarayacak bir şey bulamıyorum. İşte ne var şu ana kadar
switch $argv
case nomail
## Perform normal script functions
case ???
## Perform normal script functions
mailx -s "Script Done!"
end
bu şu hatayı atar Koşu:
Açıkçasıswitch: Expected exactly one argument, got 0
bir argüman, sadece tartışacak hiçbir kabul edecek şekilde anlatmak için sözdizimi bilmiyorum beklediğini veya varsa bir tane.
Sanırım bu oldukça basit, ama kabuk komut dosyasını çok iyi anlamıyorum.
Daha yararlı olur. –
eklendi. bunun için üzgünüm. – michaelmichael