843 Stimmen

Wie vergleiche ich zwei String-Variablen in einer 'if'-Anweisung in Bash?

Ich versuche, eine if Anweisung zur Arbeit in Bash (mit Ubuntu ):

#!/bin/bash

s1="hi"
s2="hi"

if ["$s1" == "$s2"]
then
  echo match
fi

Ich habe verschiedene Formen des Systems ausprobiert if Anweisung, mit [["$s1" == "$s2"]] , mit und ohne Anführungszeichen, mit = , == y -eq aber ich erhalte immer noch den folgenden Fehler:

[hi: Befehl nicht gefunden

Ich habe mir verschiedene Websites und Anleitungen angesehen und diese kopiert, aber es funktioniert nicht - was mache ich falsch?

Letztendlich möchte ich sagen, ob $s1 enthält $s2 Wie kann ich das also tun?

Ich habe gerade den Teil mit den Leerzeichen ausgearbeitet... :/ Wie soll ich sagen enthält ?

Ich habe versucht

if [[ "$s1" == "*$s2*" ]]

aber es hat nicht funktioniert.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X