Bash vs Python для DevOps инженеров и системных администраторов
Innehållsförteckning:
- Jämförelseoperatörer
- Kontrollera om en sträng innehåller en underlag
- Kontrollera om en sträng är tom
- Jämför strängar med falloperatören
- Lexikografisk jämförelse
- Slutsats
När du skriver Bash-skript behöver du ofta jämföra två strängar för att kontrollera om de är lika eller inte. Två strängar är lika när de har samma längd och innehåller samma sekvens med tecken.
Den här handledningen beskriver hur man jämför jämför strängar i Bash.
Jämförelseoperatörer
Jämförelseoperatörer är operatörer som jämför värden och returnerar sant eller falskt. När du jämför strängar i Bash kan du använda följande operatörer:
-
string1 = string2ochstring1 == string2- Jämställdhetsoperatören returnerar true om operandarna är lika.- Använd
=operatören medtest; then echo "Strings are equal." else echo "Strings are not equal." fi; then echo "Strings are equal." else echo "Strings are not equal." fiNär skriptet körs kommer det att skriva ut följande utgång.
Strings are equal.Här är ett annat skript som tar inmatningen från användaren och jämför de givna strängarna. I det här exemplet kommer vi att använda
]; then echo "Strings are equal." else echo "Strings are not equal." fi]; then echo "Strings are equal." else echo "Strings are not equal." fiKör skriptet och ange strängarna när du uppmanas:
Enter first string: Linuxize Enter second string: Ubuntu Strings are not equal.Du kan också använda det logiska och
&&och eller||för att jämföra strängar:] && echo "Equal" || echo "Not equal"Kontrollera om en sträng innehåller en underlag
Det finns flera sätt att kontrollera om en sträng innehåller en substring.
En metod är att använda surroundsträngen med asterisk symboler
*vilket betyder att matcha alla tecken.#!/bin/bash VAR='GNU/Linux is an operating system' if]; then echo "It's there." fiSkriptet kommer att upprepa följande:
It's there.Ett annat alternativ är att använda regex operator
=~som visas nedan:#!/bin/bash VAR='GNU/Linux is an operating system' if]; then echo "It's there." fiPerioden följt av en asterisk
.*Matchar noll eller fler förekommer vilket tecken som helst utom ett tecken på en ny linje.Kontrollera om en sträng är tom
Ofta måste du också kontrollera om en variabel är en tom sträng eller inte. Du kan göra detta genom att använda operatörerna
-noch-z.#!/bin/bash VAR='' if]; then echo "String is empty." fiString is empty.#!/bin/bash VAR='Linuxize' if]; then echo "String is not empty." fiJämför strängar med falloperatören
Istället för att använda testoperatörerna kan du också använda ärendeklarationen för att jämföra strängar:
#!/bin/bash VAR="Arch Linux" case $VAR in "Arch Linux") echo -n "Linuxize matched";; Fedora | CentOS) echo -n "Red Hat";; esacLexikografisk jämförelse
Lexikografisk jämförelse är en operation där två strängar jämförs alfabetiskt genom att jämföra karaktärerna i en sträng i följd från vänster till höger. Denna typ av jämförelse används sällan.
Följande skript jämför leksikografiskt två strängar:
#!/bin/bash VAR1="Linuxize" VAR2="Ubuntu" if]; then echo "${VAR1} is lexicographically greater then ${VAR2}." elif]; then echo "${VAR2} is lexicographically greater than ${VAR1}." else echo "Strings are equal" fiSkriptet kommer att mata ut följande:
Ubuntu is lexicographically greater than Linuxize.Slutsats
Jämförelse av sträng är en av de mest grundläggande och ofta använda operationerna i Bash-skript. När du har läst denna handledning bör du ha en god förståelse för hur du kan jämföra strängar i Bash. Du kan också kolla vår guide om sammankoppling av strängar.
bash terminal
- Använd
Ledamöter av Europaparlamentet kommer att avgöra om en rad frågor, bland annat hur man reglerar telekomföretag i EU, hur man straffar företag som snedvrider konkurrensen, hur man delar radiofrekvenser som släpps av TV: s migrering till digital sändning och hur man skyddar medborgarnas data i den digitala tiden.
Men de är delade om huruvida IP-adresser ska ses som personuppgifter. "Vi kommer att be kommissionen att formellt lägga fram en rapport om detta", säger Malcolm Harbour, en brittisk konservativ parlamentsledamot som spelar en central roll för att hylla den så kallade telekomrevisionen genom parlamentet.
Jämför Excel-ark med Excel Jämför verktyg
Xc Excel Jämför verktyg är ett tillägg för Excel som gör det möjligt att jämföra värden och formler mellan 2 Excel-kalkylblad .
Hur man konverterar strängar till heltal i python
Ofta när du skriver Python-kod måste du konvertera en datatyp till en annan. I Python kan du konvertera en sträng till heltal med funktionen inbyggd int ().







