Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verwenden Sie Vergleichsoperatoren in AWSTOE Komponentendokumenten
Sie können die folgenden Vergleichsoperatoren mit dem Assert Aktionsmodul und mit bedingten Ausdrücken verwenden, die den verwendenwenn Konstrukt. Ein Vergleichsoperator kann beispielsweise stringIsEmpty
mit einem einzelnen Wert arbeiten oder einen Basiswert mit einem zweiten Wert (Variablenwert) vergleichen, um festzustellen, ob der bedingte Ausdruck als true
oder false
ausgewertet wird.
Wenn der Vergleich auf zwei Werten basiert, kann der zweite Wert eine verkettete Variable sein.
Beim Vergleich von Werten eines anderen Typs können vor dem Vergleich die folgenden Wertekonvertierungen erfolgen:
-
Wenn der Variablenwert bei numerischen Vergleichen eine Zeichenfolge ist, wird die Zeichenfolge vor der Auswertung in eine Zahl AWSTOE umgewandelt. Wenn die Konvertierung nicht möglich ist, kehrt der Vergleich zurück
false
. Wenn der Variablenwert beispielsweise ist"1.0"
, funktioniert die Konvertierung, aber wenn der Variablenwert ist, schlägt"a10"
die Konvertierung fehl. -
Wenn der Variablenwert bei Zeichenkettenvergleichen eine Zahl ist, wird er vor der Auswertung in eine Zeichenfolge AWSTOE umgewandelt.
Vergleiche Zeichenketten
Die folgenden Vergleichsoperatoren verwenden Zeichenketten, um Werte zu vergleichen, auf Leerzeichen oder eine leere Zeichenfolge zu testen oder einen Eingabewert mit einem Regex-Muster zu vergleichen. Bei Zeichenfolgenvergleichen wird nicht zwischen Groß- und Kleinschreibung unterschieden und Leerzeichen am Anfang oder Ende der Zeichenketteneingaben werden nicht gekürzt.
Operatoren zum Vergleich von Zeichenketten
- stringIsEmpty
-
Der
stringIsEmpty
Operator kehrt zurück,true
wenn die angegebene Zeichenfolge keine Zeichen enthält. Beispielsweise:# Evaluates to true stringIsEmpty: "" # Evaluates to false stringIsEmpty: " " # Evaluates to false stringIsEmpty: "Hello."
- stringIsWhitespace
-
Testet, ob die für angegebene Zeichenfolge nur Leerzeichen
stringIsWhitespace
enthält. Beispielsweise:# Evaluates to true stringIsWhitespace: " " # Evaluates to false stringIsWhitespace: "" # Evaluates to false stringIsWhitespace: " Hello?"
- stringEquals
-
Testet, ob die für
stringEquals
angegebene Zeichenfolge exakt mit der imvalue
Parameter angegebenen Zeichenfolge übereinstimmt. Beispielsweise:# Evaluates to true stringEquals: 'Testing, testing...' value: 'Testing, testing...' # Evaluates to false stringEquals: 'Testing, testing...' value: 'Hello again.' # Evaluates to false stringEquals: 'Testing, testing...' value: 'TESTING, TESTING....' # Evaluates to false stringEquals: 'Testing, testing...' value: ' Testing, testing...' # Evaluates to false stringEquals: 'Testing, testing...' value: 'Testing, testing... '
- stringLessThan
-
Testet, ob die für angegebene Zeichenfolge kleiner als die im
value
Parameter angegebene ZeichenfolgestringLessThan
ist. Beispielsweise:# Evaluates to true # This comparison operator isn't case sensitive stringlessThan: 'A' value: 'a' # Evaluates to true - 'a' is less than 'b' stringlessThan: 'b' value: 'a' # Evaluates to true # Numeric strings compare as less than alphabetic strings stringlessThan: 'a' value: '0' # Evaluates to false stringlessThan: '0' value: 'a'
- stringLessThanEntspricht
-
Testet, ob die für angegebene Zeichenfolge kleiner oder gleich der im
value
Parameter angegebenen ZeichenfolgestringLessThanEquals
ist. Beispielsweise:# Evaluates to true - 'a' is equal to 'a' stringLessThanEquals: 'a' value: 'a' # Evaluates to true - since the comparison isn't case sensitive, 'a' is equal to 'A' stringLessThanEquals: 'A' value: 'a' # Evaluates to true - 'a' is less than 'b' stringLessThanEquals: 'b' value: 'a' # Evaluates to true - '0' is less than 'a' stringLessThanEquals: 'a' value: '0' # Evaluates to false - 'a' is greater than '0' stringLessThanEquals: '0' value: 'a'
- stringGreaterThan
-
Testet, ob die für angegebene Zeichenfolge größer als die im
value
Parameter angegebene ZeichenfolgestringGreaterThan
ist. Beispielsweise:# Evaluates to false - since the comparison isn't case sensitive, 'A' is equal to 'a' stringGreaterThan: 'a' value: 'A' # Evaluates to true - 'b' is greater than 'a' stringGreaterThan: 'a' value: 'b' # Evaluates to true - 'a' is greater than '0' stringGreaterThan: '0' value: 'a' # Evaluates to false - '0' is less than 'a' stringGreaterThan: 'a' value: '0'
- stringGreaterThanEntspricht
-
Testet, ob die für angegebene Zeichenfolge größer oder gleich der im
value
Parameter angegebenen ZeichenfolgestringGreaterThanEquals
ist. Beispielsweise:# Evaluates to true - 'a' is equal to 'A' stringGreaterThanEquals: 'A' value: 'a' # Evaluates to true - 'b' is greater than 'a' stringGreaterThanEquals: 'a' value: 'b' # Evaluates to true - 'a' is greater than '0' stringGreaterThanEquals: '0' value: 'a' # Evaluates to false - '0' is less than 'a' stringGreaterThanEquals: 'a' value: '0'
- patternMatches
-
Testet, ob die im
value
Parameter angegebene Zeichenfolge mit dem für angegebenen Regex-Muster übereinstimmt.patternMatches
Der Vergleich verwendet das Golang-Regexp-Paket, dasder Syntax entspricht. RE2 Weitere Informationen zu RE2 Regeln finden Sie im google/re2-Repository unter. GitHub Das folgende Beispiel zeigt eine Musterübereinstimmung, die Folgendes zurückgibt
true
:patternMatches: '^[a-z]+$' value: 'ThisIsValue'
Zahlen vergleichen
Die folgenden Vergleichsoperatoren arbeiten mit Zahlen. Bei den für diese Operatoren bereitgestellten Werte muss es sich gemäß der YAML Spezifikation um einen der folgenden Typen handeln. Die Support für numerische Vergleiche verwendet den Golang Big Package Comparison Operator, zum Beispiel: func (*Float
-
Ganzzahl
-
Float (basiert auf float64, das Zahlen von -1.7e+308 bis +1.7e+308 unterstützt)
-
Eine Zeichenfolge, die dem folgenden Regex-Muster entspricht:
^[-+]?([0-9]+[.])?[0-9]+$
Operatoren für den Zahlenvergleich
- numberEquals
-
Testet, ob die für
numberEquals
angegebene Zahl der imvalue
Parameter angegebenen Zahl entspricht. Alle folgenden Beispielvergleiche geben Folgendes zurücktrue
:# Values provided as a positive number numberEquals: 1 value: 1 # Comparison value provided as a string numberEquals: '1' value: 1 # Value provided as a string numberEquals: 1 value: '1' # Values provided as floats numberEquals: 5.0 value: 5.0 # Values provided as a negative number numberEquals: -1 value: -1
- numberLessThan
-
Testet, ob die für angegebene Zahl kleiner als die im
value
Parameter angegebene ZahlnumberLessThan
ist. Beispielsweise:# Evaluates to true numberLessThan: 2 value: 1 # Evaluates to true numberLessThan: 2 value: 1.9 # Evaluates to false numberLessThan: 2 value: '2'
- numberLessThanEntspricht
-
Testet, ob die für angegebene Zahl kleiner oder gleich der im
value
Parameter angegebenen ZahlnumberLessThanEquals
ist. Beispielsweise:# Evaluates to true numberLessThanEquals: 2 value: 1 # Evaluates to true numberLessThanEquals: 2 value: 1.9 # Evaluates to true numberLessThanEquals: 2 value: '2' # Evaluates to false numberLessThanEquals: 2 value: 2.1
- numberGreaterThan
-
Testet, ob die für angegebene Zahl größer als die im
value
Parameter angegebene ZahlnumberGreaterThan
ist. Beispielsweise:# Evaluates to true numberGreaterThan: 1 value: 2 # Evaluates to true numberGreaterThan: 1 value: 1.1 # Evaluates to false numberGreaterThan: 1 value: '1'
- numberGreaterThanEntspricht
-
Testet, ob die für angegebene Zahl größer oder gleich der im
value
Parameter angegebenen ZahlnumberGreaterThanEquals
ist. Beispielsweise:# Evaluates to true numberGreaterThanEquals: 1 value: 2 # Evaluates to true numberGreaterThanEquals: 1 value: 1.1 # Evaluates to true numberGreaterThanEquals: 1 value: '1' # Evaluates to false numberGreaterThanEquals: 1 value: 0.8
Überprüfen Sie die Dateien
Die folgenden Vergleichsoperatoren überprüfen den Datei-Hash oder prüfen, ob eine Datei oder ein Ordner existiert.
Datei- und Ordneroperatoren
- binaryExists
-
Testet, ob eine Anwendung im aktuellen Pfad verfügbar ist. Beispielsweise:
binaryExists: '
foo
'Anmerkung
Auf Linux- und macOS-Systemen für eine Anwendung mit dem Namen
foo
, dies funktioniert genauso wie der folgende Bash-Befehl:typefoo
>/dev/null 2>&1, wobei $? == 0 auf einen erfolgreichen Vergleich hinweist.Auf Windows-Systemen für eine Anwendung mit dem Namen
foo
, funktioniert genauso wie der PowerShell Befehl, der $LASTEXITCODE = 0 auf & C:\Windows\System32\where.exe /Qfoo
einen erfolgreichen Vergleich hinweist. - fileExists
-
Testet, ob eine Datei im angegebenen Pfad existiert. Sie können einen absoluten oder relativen Pfad angeben. Wenn der von Ihnen angegebene Speicherort existiert und es sich um
true
eine Datei handelt, ergibt der Vergleich Folgendes: Beispielsweise:fileExists: '
/path/to/file
'Anmerkung
Auf Linux- und macOS-Systemen funktioniert dies genauso wie der folgende Bash-Befehl:-d
/path/to/file
, wobei $? == 0 auf einen erfolgreichen Vergleich hinweist.Auf Windows-Systemen funktioniert das genauso wie der PowerShell BefehlTest-Path -Path '
C:\path\to\file
' -PathType 'Leaf'. - folderExists
-
Testet, ob ein Ordner unter dem angegebenen Pfad existiert. Sie können einen absoluten oder relativen Pfad angeben. Wenn der von Ihnen angegebene Speicherort vorhanden ist und es sich um
true
einen Ordner handelt, ergibt der Vergleich Folgendes: Beispielsweise:folderExists: '
/path/to/folder
'Anmerkung
Auf Linux- und macOS-Systemen funktioniert dies genauso wie der folgende Bash-Befehl:-d
/path/to/folder
, wobei $? == 0 auf einen erfolgreichen Vergleich hinweist.Auf Windows-Systemen funktioniert das genauso wie der PowerShell BefehlTest-Path -Path '
C:\path\to\folder
' -PathType 'Container'. - Datei MD5Equals
-
Testet, ob der MD5 Hash einer Datei einem bestimmten Wert entspricht. Beispielsweise:
fileMD5Equals: '
<MD5Hash>
' path: '/path/to/file
' - Datei SHA1Equals
-
Testet, ob der SHA1 Hash einer Datei einem bestimmten Wert entspricht. Beispielsweise:
fileSHA1Equals: '
<SHA1Hash>
' path: '/path/to/file
' - Datei SHA256Equals
-
Testet, ob der SHA256 Hash einer Datei einem bestimmten Wert entspricht. Beispielsweise:
fileSHA256Equals: '
<SHA256Hash>
' path: '/path/to/file
' - Datei SHA512Equals
-
Testet, ob der SHA512 Hash einer Datei einem bestimmten Wert entspricht. Beispielsweise:
fileSHA512Equals: '
<SHA512Hash>
' path: '/path/to/file
'