bash: prüfen on Begriff in String

  • Hallo,


    Ich möchte eine Variable untersuchen, ob eine bestimmte Zeichenfolge drin vorkommt.


    Mir fällt im Moment nur folgendes Konstrukt ein:


    test=`echo $string | grep $such`
    if [ "$test" != "" ]
    then
    .....
    fi


    hat jemand ne bessere Idee?


    MfG


    jsffm


    vdr-User-# 755 to_h264 chk_r vdr-transcode github

  • ungetested:


    if [ $(echo $string | grep $such) ] ; then
    ...
    fi


    ansonsten schau dir auch mal sed an ...


    VDR Headless@Ubuntu 18.04 auf kleinem Linux-Heimserver an SAT>IP Xoro 8100

    AppleTV mit MrMC (iOS-Kodi-Client)

    Einmal editiert, zuletzt von heiko.20 ()

  • Zitat

    Original von Greywolf
    Sofern $such weder "?" noch "*" enthält:


    Code
    if [ -z "${string%%*${such}*}" ]
    then
      echo "$such ist in $string enthalten"
    fi


    Genau sowas habe ich gesucht, ich wollte den Aufruf eines externen Programmes wie grep oder sed vermeiden.


    Danke,


    ich werde das Testen!


    vdr-User-# 755 to_h264 chk_r vdr-transcode github

  • Code
    if [ -z "${Variable/*${Suche}*} ]; then
      echo gefunden
    fi


    ...bitte nicht auf alles und jeden mit SED und AWK schießen, nur weil man die Bash nicht kennt...


    Viele Grüße, Mirko

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!