Was bewirkt das Prozentzeichen in Linux-Shell-Strings?
Wenn Sie gerade lernen, wie Sie die Linux-Shell vollständig nutzen können, werden Sie vielleicht neugierig darauf sein, wie sehr Sie Strings bearbeiten können, um die besten Ergebnisse zu erzielen. In diesem Sinne hat der heutige Q & A-Beitrag von SuperUser die Antwort auf die Frage eines neugierigen Lesers.
Die heutige Question & Answer-Sitzung wird dank SuperUser zur Verfügung gestellt - einer Unterteilung von Stack Exchange, einer Community-basierten Gruppierung von Q & A-Websites.
Die Frage
SuperUser-Leser Nissim Kaufmann möchte wissen, was das Prozentzeichen in Linux-Shell-Strings bewirkt:
Was bewirkt das Prozentzeichen (%) bei der Verwendung der Linux-Shell? Zum Beispiel:
Was bewirkt das Prozentzeichen in Linux-Shell-Strings??
Die Antwort
SuperUser-Mitwirkender Marek Rost hat die Antwort für uns:
Wenn das Prozentzeichen (%) im Muster verwendet wird $ variable% substring, es wird den Inhalt der Variablen mit dem kürzesten Vorkommen von Teilzeichenfolge zurückgeben, die von der Rückseite der Variablen gelöscht wurde.
Diese Funktion unterstützt Platzhaltermuster. Deshalb akzeptiert sie ein Sternchen (Stern) als Ersatz für null oder mehr Zeichen. Es sollte erwähnt werden, dass dies Bash-spezifisch ist. Andere Linux-Shells enthalten diese Funktion nicht unbedingt.
Wenn Sie mehr über die String-Manipulation in Bash erfahren möchten, empfiehlt es sich, die folgende Seite, Advanced Bash-Scripting Guide, zu lesen: Kapitel 10. Variablen bearbeiten. Neben vielen anderen praktischen Funktionen wird beispielsweise erläutert, was ein doppeltes Prozentzeichen (%%) bewirkt.
Ich habe vergessen, das zu erwähnen, wenn es im Muster verwendet wird $ ((Variable% number)) oder $ ((variable1% $ variable2)), Das Prozentzeichen (%) dient als Modulo-Operator.
Wenn das Prozentzeichen (%) in verschiedenen Kontexten verwendet wird, sollte es nur als reguläres Zeichen erkannt werden.
Haben Sie der Erklärung etwas hinzuzufügen? Sound off in den Kommentaren. Möchten Sie mehr Antworten von anderen technisch versierten Stack Exchange-Benutzern lesen? Hier geht es zum vollständigen Diskussionsthread.
Bildnachweis: Linux Screenshots (Flickr)