25 Kasım 2010, PERŞEMBE
Nasıl bir iki dize değişkenleri karşılaştırmak 'deyim' Bash mı?
if
Bash çalışmak için bir açıklama (Ubuntu kullanarak) almaya çalışıyorum:
#!/bin/bash
s1="hi"
s2="hi"
if ["$s1" == "$s2"]
then
echo match
fi
Denedim çeşitli formları if
ifadesini kullanarak [["$s1" == "$s2"]], ve tırnak kullanarak =
, ==
-eq
, ama yine de aşağıdaki hatayı:
[hı: komut bulunamadı
Çeşitli siteleri ve rehberler baktı ve o kopyaladım ama çalışmıyor - neyi yanlış yapıyorum?
Sonunda, eğer $s1
$s2
, varsa söylemek istiyorum, bunu nasıl yapabilirim?
Boşlukları biraz.. :/ çalışma yaptım sadece Nasıl içerir derim?
Denedim
if [[ "$s1" == "*$s2*" ]]
ama işe yaramadı.
CEVAP
25 Kasım 2010, PERŞEMBE
Dize karşılaştırma için, kullanın:
if [ "$s1" == "$s2" ]
a
içerir b
, kullanın:
if [[ $s1 == *"$s2"* ]]
Bunu Paylaş:
Nasıl Bash dize değişkenleri bitiştirm...
Nasıl Bash ayırıcı üzerinde bir dize b...
Nasıl bash sayı değişkenleri tarafında...
Nasıl bir bash işlevi, bir dize değeri...
Nasıl benim bir işlev için tüm değişke...