If-Koubou

Co robi znak procentowy w Linux Strings Strings?

Co robi znak procentowy w Linux Strings Strings? (Jak)

Kiedy jesteś w trakcie uczenia się, jak w pełni korzystać z powłoki Linuksa, możesz być ciekawy, ile możesz manipulować ciągami, aby uzyskać najlepsze wyniki. Mając to na uwadze, dzisiejszy post z pytaniami i odpowiedziami SuperUser zawiera odpowiedź na ciekawe pytanie czytelnika.

Dzisiejsza sesja pytań i odpowiedzi przychodzi do nas dzięki uprzejmości SuperUser - poddziału Stack Exchange, społecznościowego forum z pytaniami i odpowiedziami.

Pytanie

Czytnik SuperUser Nissim Kaufmann chce wiedzieć, co oznacza znak procentu w ciągach powłoki Linux:

Kiedy używasz powłoki Linuxa, co robi znak procentu (%)? Na przykład:

Co robi znak procentu w ciągach powłoki Linuxa?

Odpowiedź

Recenzent SuperUser Marek Rost ma dla nas odpowiedź:

Gdy znak procentu (%) jest używany we wzorcu $ zmienna% podłańcuch, zwróci zawartość zmiennej o najkrótszym wystąpieniu podłańcucha usuniętego z odwrotnej strony zmiennej.

Ta funkcja obsługuje wzorce wieloznaczne, dlatego akceptuje gwiazdkę (gwiazdkę) jako substytut dla zero lub więcej znaków. Należy wspomnieć, że jest to specyfikacja Bash. Inne powłoki systemu Linux niekoniecznie zawierają tę funkcję.

Jeśli chcesz dowiedzieć się więcej o manipulacji ciągami w Bash, bardzo polecam lekturę następnej strony, Advanced Bash-Scripting Guide: Rozdział 10. Manipulowanie zmiennymi. Spośród wielu innych przydatnych funkcji wyjaśnia, na przykład, co robi podwójny znak procentu (%%).

Zapomniałem o tym wspomnieć, gdy jest używany we wzorcu $ ((zmienna liczba%)) lub $ ((zmienna1% $ zmienna2)), znak procentu (%) będzie działał jako operator modulo.

Kiedy znak procentu (%) jest używany w różnych kontekstach, powinien być rozpoznawany tylko jako zwykły znak.

Czy masz coś do dodania do wyjaśnienia? Dźwięk w komentarzach. Chcesz przeczytać więcej odpowiedzi od innych użytkowników Stack Exchange, którzy znają się na technologii? Sprawdź cały wątek dyskusji tutaj.

Image Credit: Zrzuty ekranu z systemu Linux (Flickr)