剪定ばさみの研ぎ方【岡恒の剪定鋏を超仕上げ】(字幕)
Indholdsfortegnelse:
En af de mest almindelige handlinger, når du arbejder med strenge i Bash, er at bestemme, om en streng indeholder en anden streng., viser vi dig flere måder at kontrollere, om en streng indeholder en substring.
Brug af wildcards
Den nemmeste metode er at omgi substringstrengen med asterisk wildcard symboler (asterisk)
*
og sammenligne den med strengen. Wildcard er et symbol, der bruges til at repræsentere nul, en eller flere tegn.
Hvis testen returnerer
true
, er substrengen indeholdt i strengen.
I eksemplet nedenfor bruger vi if-sætningen og ligestillingsoperatøren (
==
) til at kontrollere, om den underliggende streng er fundet i strengen
STR
:
#!/bin/bash STR='GNU/Linux is an operating system' SUB='Linux' if]; then echo "It's there." fi
Når det udføres, udskrives scriptet:
Brug af sagsoperatøren
I stedet for at bruge if-sætningen, kan du også bruge sagsangivelsen til at kontrollere, om en streng inkluderer en anden streng eller ej.
#!/bin/bash STR='GNU/Linux is an operating system' SUB='Linux' case $STR in *"$SUB"*) echo -n "It's there.";; esac
Brug af Regex Operator
En anden mulighed for at bestemme, om en specificeret undertreng forekommer i en streng, er at bruge regex-operatoren
=~
. Når denne operatør bruges, betragtes den højre streng som et almindeligt udtryk.
Perioden efterfulgt af en stjerne
.*
Matcher nul eller flere forekommer et hvilket som helst tegn undtagen en newline-karakter.
#!/bin/bash STR='GNU/Linux is an operating system' SUB='Linux' if]; then echo "It's there." fi
Scriptet gentager følgende:
Brug af Grep
Grep-kommandoen kan også bruges til at finde strenge i en anden streng.
I det følgende eksempel overfører vi strengen
$STR
som en input til grep og kontrollerer, om strengen
$SUB
findes i inputstrengen. Kommandoen returnerer
true
eller
false
efter behov.
#!/bin/bash STR='GNU/Linux is an operating system' SUB='Linux' if grep -q "$SUB" <<< "$STR"; then echo "It's there" fi
Indstillingen
-q
fortæller, at grep skal være stille, for at udelade output.
Konklusion
Kontrol af, om en streng indeholder en substring, er en af de mest basale og hyppigt anvendte handlinger i Bash-scripting.
Efter at have læst denne tutorial, skal du have en god forståelse af, hvordan du tester, om en streng inkluderer en anden streng. Du kan også bruge andre kommandoer som
awk
eller
sed
til test.
Halloween dingbat kollektion Trick or Treat 2.0 fra Jess Latham på Blue Vinyl er helt sikkert et trick, men alle behandler . Trick or Treat 2.0-samlingen af grafik indeholder stort set hvert Halloween-ikon, du kan tænke på: flagermus, edderkopper, kranier, spøgelser, hekse, djæveler, slik, katte, ugler, hjemsøgte huse og et helt mord på krager. Trick or Treat 2.0 indeholder 26 forskellige grafik, en for hver store og små bogstaver.

Hver er indviklet nogle er silhuetter, andre indeholder mere detaljer. I modsætning til nogle dingbats skrifttyper udføres hver eneste af de "fladder" i Trick eller Treat 2.0 i Jess Lathams unikke stil, så dit udseende forbliver ensartet uanset hvor mange forskellige billeder du bruger i et dokument. Downloaden indeholder både TrueType og OpenType versioner (ikke installer dem begge, så vil hverken fungere korrekt). Derudover har Jess inkluderet en separat Mac-download på hans Blue Vinyl-websted
Sådan kontrolleres, om der findes en fil eller et bibliotek i bash

Mange gange, når du skriver Shell-scripts, kan du muligvis befinde dig i en situation, hvor du har brug for at udføre en handling baseret på, om en fil findes eller ej. I Bash kan du bruge testkommandoen til at kontrollere, om der findes en fil og bestemme filtypen.
Sådan bruges sed til at finde og udskifte streng i filer

sed er en streameditor. Med sed kan du søge, finde og udskifte, indsætte og slette strenge og linjer. Det understøtter grundlæggende og udvidede regelmæssige udtryk, der giver dig mulighed for at matche komplekse mønstre.