SORU
23 EKİM 2008, PERŞEMBE


Dize bash içerir

Bash kullanarak, bir dize var:

string=`echo My string`

Nasıl başka bir dize içerip içermediğini test edebilirsiniz?

if [ $string ?? 'foo' ] then;
  echo "It's there!";
fi;

Nerede ?? bilinmeyen operatörüm. Echo ve grep kullanırım?

if [ `echo $string | grep 'foo' ` ] then;
  echo "It's there!";
fi;

Bu biraz hantal görünüyor.

CEVAP
23 EKİM 2008, PERŞEMBE


Eğer çift parantez kullanırsanız case deyimi dışında Marcus's answer (* joker) da kullanabilirsiniz:

string='My long string';

if [[ $string == *"My long"* ]]
then
  echo "It's there!";
fi

İğne dize boşluk unutmayın çift tırnak arasında bir yerlerde olması gerekir, ve *joker karakterler çift tırnak işaretleri dışında olmalıdır.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Eric Magidson

    Eric Magidso

    4 Ocak 2009
  • Google

    Google

    18 EYLÜL 2005
  • Stanislav Petrov

    Stanislav Pe

    7 ŞUBAT 2009