Çoğu durumda, bash betikleri, betiğe giriş seçenekleri sağlamak için argüman değerleri gerektirir. Komut satırı bağımsız değişkenlerini iki şekilde işleyebilirsiniz. birini kullanarak argüman değişkenleri ve diğeri kullanmak için getopts İşlev. Bu öğretici, komut satırı bağımsız değişkenleriyle nasıl çalışacağınızı gösterir.
Argüman değişkenlerini kullanma:
Argüman değişkeni $0’dan başlar. Ana betiğin adı, argüman değerlerini komut satırı argümanlarından alan $0’da saklanır. Komut satırında iki argüman iletilirse, sırasıyla $1 ve $2 değişkenlerindeki argümanların değerleri alınır.
Örnek -1: Argüman olarak üç sayısal değer gönderme
Bir bash dosyası oluşturun ve aşağıdaki kodu ekleyin. Komut dosyası üç argüman değeri alacak ve bunları $1, $2 ve $3 olarak saklayacaktır.Toplam argüman sayısını sayar ve argüman değerlerini döngülü ve döngüsüz olarak yazdırır. Son olarak, bağımsız değişkenlerin tüm değerlerinin toplamını yazdırın.
# Toplam argüman sayısını hesapla
Eko“Toplam bağımsız değişken sayısı: $#”
# Argüman değerlerini ayrı ayrı oku
Eko“ilk bağımsız değişken değeri: $1”
Eko“ikinci bağımsız değişkenin değeri: 2 $”
EkoÜçüncü bağımsız değişken değeri: $3
# Döngü kullanarak bağımsız değişken değerlerini oku
için şüpheyle içeri“[e-posta korumalı]“
yapmak
Eko-n“argval doları “
tamamlamak
# Argüman değerleri ekle
toplam= dolar((1 dolar+2 dolar+3 dolar))
# Yazdırma sonucu
Eko-e“\nToplam sonuç = Toplam“
Üç sayısal bağımsız değişken değeri içeren Bash dosyası.
$ ezmek cmdline1.sh 503515.
Örnek-2: Dosya isminin argüman olarak alınması
Bir bash dosyası oluşturun ve herhangi bir dosyanın toplam karakter sayısını saymak için aşağıdaki kodu ekleyin. Burada dosya adı bir komut satırı argümanı olarak iletilecektir.
#! / kutu / bash
dosya adı=1 dolar
toplam karakter=“tuvalet-c$ dosya adı“
Ekotoplam karakter sayısı $ karakter toplamı“
Bash komut dosyasını, dosya adıyla bir bağımsız değişken değeri olarak çalıştırın ve o dosyanın toplam karakter sayısını kontrol etmek için başka bir komut çalıştırın. Burada run.txt dosyası parametre değeri olarak kullanılır. Çalışan.txt dosyasındaki toplam karakter sayısı 204’tür.
$ ezmek cmdline2.sh çalışanı. Txt
$ tuvalet-c Çalışan.txt
getopts işlevini kullanma:
Verileri bir veritabanında veya herhangi bir dosyada saklamak veya komut satırı argümanlarının değerlerine dayalı olarak belirli bir biçimde bir rapor oluşturmak istiyorsanız getopts İş, işi yapmak için en iyi seçimdir. Yerleşik bir Linux işlevidir. Böylece, biçimlendirilmiş verileri komut satırından okumak için betiğinizde bu işlevi kolayca kullanabilirsiniz.
Örnek-1: getopts fonksiyonu ile argüman okuma
Bir bash dosyası oluşturun ve nasıl kullanılacağını anlamak için aşağıdaki betiği ekleyin. getopts İşlev. “Getopts” işlevi, komut satırı bağımsız değişken seçeneklerini ve bağımsız değişken değerlerini okumak için while döngüsüyle birlikte kullanılır. Burada 4 seçenek kullanılmaktadır. “i”, “n”, “m” e “e”. Case ifadesi, seçilen seçeneği eşleştirmek ve bağımsız değişkenin değerini bir değişkende saklamak için kullanılır. Son olarak, değişken değerlerini yazdırın.
#! / kutu / bash
Süregetopts“:içimde:” tartışma; yapmak
dava, davet$ argümaniçeri
Kahve)Kimlik Kartı=$OPTARG;;
n)İsim=$OPTARG;;
M)üretim tarihi=$OPTARG;;
e)Son kullanma tarihi=$OPTARG;;
esac
tamamlamak
Eko-e“\n$id$reklam$üretim_tarihiSon kullanma tarihi\n“
Dosyayı aşağıdaki seçenekler ve bağımsız değişken değerleriyle çalıştırın. Burada p100 -i seçeneğinin değeri, “Sıcak Kek” -n seçeneğinin değeri, “01 -01-2018” -m seçeneğinin değeri ve “06 -01-2018” seçeneğin değeridir. -m -‘nin değeri. Salatalık.
$ ezmek cmdline3.sh Kahve sayfa 001 -nsıcak topuzM“01-01-2018”-e“06-01-2018”
Bir komut dosyasında basit değerler göndermeniz gerektiğinde, argüman değişkenlerini kullanmak en iyisidir. Ancak verileri biçimlendirilmiş bir şekilde göndermek istiyorsanız, bağımsız değişken değerlerini almak için getopts işlevini kullanmak daha iyidir. Daha fazla bilgi için izleyin video!
Diğer gönderilerimize göz at
[wpcin-random-posts]
İlk Yorumu Siz Yapın