2016-03-25 20 views
0

Komut dosyası olarak oldukça yeniyim ve bazı yardımları kullanabilirim.Bir betik betiğindeki belirli işlevleri çağırmak için bir değişken kullanmak

Ben dosya sistemleri bakım yapmak farklı sunucular (aynı işletim sistemi, farklı uygulamalar), birkaç komut dosyaları var. Hangi fonksiyonun/fonksiyonların çalıştırılacağını gösteren bir "değişken" ile cron'dan arayabileceğim büyük bir betik yapmak istiyorum.

Örneğin, hemen hemen tüm sunucular yığın dökümlerini deneyimlemekte, dolayısıyla bunların hepsinin üzerinde çalışmasını isterim, ancak her uygulamanın kendi özel uygulamaları için farklı gereksinimleri vardır. Bu nedenle, cron'da bir değişkeni iletmek istiyorum. Komut ek temizleme ne gereklidir (işlev). Fonksiyon bölümünün aşağı, sadece nasıl arayacağımı bilmem gerek.

00 23 * * * /home/user/scripts/filesarchive.sh "değişken_adı" Yani

Ben cron'u olsun isterim:

ben cron böyle bir şey gösteren bazı örnekler bulduk betiği çalıştırın, ancak daha sonra "variable_name" içine koyduğum değişkene dayanarak betiğin içinde belirli işlevleri çalıştırın.

ben cron komutunun ucundan "variable_name" almak için komut dosyasını anlatmak ve sonra işlevi yerine anlamaya olamaz.

Ben kolay süper eminim, ama ben aradığım bulmak için görünmüyor olabilir.

Herhangi bir yardım için teşekkür ederiz! Teşekkür ederim!

OS: RHEL Kabuk: Bash

Ben işlevlerini kullanmayı önermek

cevap

0

.

/home/user/scripts/filesarchive.sh foo veya /home/user/scripts/filesarchive.sh bar ile bu script deneyin:

#!/bin/bash 

foo() { 
    echo "in foo" 
} 

bar() { 
    echo "in bar" 
} 

"$1" 
İlgili konular