Shell Scripting Interview Questions & Answers | Linux Admin Certification Training | Edureka
Spisu treści:
- Używanie symboli wieloznacznych
- Korzystanie z operatora skrzynki
- Korzystanie z Regex Operator
- Korzystanie z Grep
- Wniosek
Jedną z najczęstszych operacji podczas pracy z ciągami w Bash jest ustalenie, czy ciąg zawiera inny ciąg.
pokażemy kilka sposobów sprawdzania, czy łańcuch zawiera podłańcuch.
Używanie symboli wieloznacznych
Najłatwiejszym sposobem jest otoczenie podłańcucha symbolami wieloznacznymi gwiazdki (gwiazdka)
*
i porównanie go z łańcuchem. Symbol wieloznaczny to symbol używany do reprezentowania zera, jednego lub więcej znaków.
Jeśli test zwraca
true
, podłańcuch jest zawarty w ciągu.
W poniższym przykładzie używamy instrukcji if i operatora równości (
==
), aby sprawdzić, czy podłańcuch
SUB
znajduje się w ciągu
STR
:
#!/bin/bash STR='GNU/Linux is an operating system' SUB='Linux' if]; then echo "It's there." fi
Po uruchomieniu skrypt wyświetli:
Korzystanie z operatora skrzynki
Zamiast używać instrukcji if, możesz także użyć instrukcji case, aby sprawdzić, czy łańcuch zawiera inny ciąg.
#!/bin/bash STR='GNU/Linux is an operating system' SUB='Linux' case $STR in *"$SUB"*) echo -n "It's there.";; esac
Korzystanie z Regex Operator
Inną opcją ustalenia, czy określony ciąg znaków występuje w ciągu, jest użycie operatora wyrażenia regularnego
=~
. Gdy używany jest ten operator, właściwy ciąg znaków jest traktowany jako wyrażenie regularne.
Kropka, po której następuje gwiazdka
.*
Odpowiada zeru lub większej liczbie wystąpień dowolnego znaku oprócz znaku nowej linii.
#!/bin/bash STR='GNU/Linux is an operating system' SUB='Linux' if]; then echo "It's there." fi
Skrypt wyświetli następujące echo:
Korzystanie z Grep
Polecenia grep można również użyć do znalezienia ciągów w innym ciągu.
W poniższym przykładzie przekazujemy ciąg
$STR
jako dane wejściowe do grep i sprawdzamy, czy ciąg
$SUB
znajduje się w ciągu wejściowym. Polecenie zwróci odpowiednio
true
lub
false
.
#!/bin/bash STR='GNU/Linux is an operating system' SUB='Linux' if grep -q "$SUB" <<< "$STR"; then echo "It's there" fi
Opcja
-q
mówi grepowi, aby był cichy i pomijał dane wyjściowe.
Wniosek
Sprawdzanie, czy łańcuch zawiera podłańcuch, jest jedną z najbardziej podstawowych i często używanych operacji w skryptach Bash.
Po przeczytaniu tego samouczka powinieneś dobrze zrozumieć, w jaki sposób sprawdzić, czy ciąg zawiera inny ciąg. Do testowania możesz także użyć innych poleceń, takich jak
awk
lub
sed
.
Wydania Chrome 13: zawiera strony błyskawiczne, podgląd wydruku i inne udostępnione wersje Chorus 13: zawiera strony błyskawiczne, podgląd wydruku i wiele więcej
Pobierz Chrome 13. Wprowadza nową funkcję o nazwie Instant Pages, która jest domyślnie włączona. Zawiera także funkcję podglądu wydruku za pomocą wbudowanej przeglądarki PDF.
Jak sprawdzić lub sprawdzić, gdzie link lub adres URL przekierowuje do
Te bezpłatne narzędzia online pomagają znaleźć, czy adres URL, który Cię przekierowuje chcesz sprawdzić idzie do wybranego miejsca docelowego, czy nie. Znajdź miejsce, do którego przekierowuje dany URL lub link.
Jak sprawdzić, czy plik lub katalog istnieje w bash
Wiele razy podczas pisania skryptów Shell możesz znaleźć się w sytuacji, w której musisz wykonać akcję w oparciu o to, czy plik istnieje, czy nie. W Bash możesz użyć polecenia testowego, aby sprawdzić, czy plik istnieje i określić typ pliku.