bir başka yolu durumlarda yapma ve idam komut dosyasına bir parametre geçirerek edilebilir. Örnek şöyle olabilir: Önce "script.sh" adlı bir dosya oluşturun. Sonra buna şu kodu ekleyin:
#!/bin/sh
my_function() {
echo "this is my function."
}
my_second_function() {
echo "this is my second function."
}
case "$1" in
'do_my_function')
my_function
;;
'do_my_second_function')
my_second_function
;;
*) #default execute
my_function
esac
yukarıdaki kodu ekledikten sonra eylem görmek için bu komutları çalıştırın: size sadece çalıştırmak gerekir gerektiği gibi
[email protected]:/# chmod +x script.sh #This will make the file executable
[email protected]:/# ./script.sh #This will run the script without any parameters, triggering the default action.
this is my function.
[email protected]:/# ./script.sh do_my_second_function #Executing the script with parameter
this function is my second one.
[email protected]:/#
Bu işi yapmak için
su username -c '/path/to/script.sh do_my_second_function'
ve her şey iyi çalışıyor olmalıdır. Umarım bu yardımcı olur :)
sudo etkin değil. Sistem yöneticisi bunu etkinleştirmez. –
Bunu sudo ile nasıl yapıyorsunuz? Bu işlevi ihraç ettikten sonra bile basit bir 'sudo my_function' çalışmaz. – michas