SORU
17 ŞUBAT 2012, Cuma


Nasıl isteğe bağlı giriş bağımsız değişken götüren bir bash betiği yazmak için?

Senaryomu isteğe bağlı bir giriş almak mümkün olmak istiyorum

örneğin şu anda benim senaryom

#!/bin/bash
somecommand foo

ama şunu söylemek istiyorum:

#!/bin/bash
somecommand  [ if $1 exists, $1, else, foo ]

CEVAP
17 ŞUBAT 2012, Cuma


Varsayılan değer sözdizimi: kullanabilirsiniz

somecommand ${1:-foo}

Yukarıdaki Bash Reference Manual - 3.5.3 Shell Parameter Expansion açıklandığı gibi, [vurgu benim]

Parametre ise geri alya da boşkelime genişleme değiştirilecektir. Aksi takdirde, parametre değeri değiştirilecektir.

Eğer sadece eğer parametre ayarlama ise varsayılan değeri yerine (eğer boş ise, örneğin, eğer boş bir dize ise değil) istiyorsanız, bu sözdizimini kullanın:

somecommand ${1-foo}

Bash Reference Manual - 3.5.3 Shell Parameter Expansion: tekrar

Kolon unutulduğunda geri al bir parametre için sadece bir test sonuçları. Eğer kolon operatörü her iki parametre varlığı için testler ve değeri boş olduğunu; Eğer kolon belirtilmezse dahil, başka bir deyişle, operatörün varlığını sınar.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jose LviS el Bambino ( JLB )   LviSito

    Jose LviS el

    3 ŞUBAT 2008
  • cosmicrocketman

    cosmicrocket

    17 NİSAN 2006
  • DominicFear

    DominicFear

    30 Kasım 2006