Dieser Artikel stellt vor, wie man ! (Ausrufezeichen) in der Bash-Kommandozeile in Linux-PC-/Serverumgebungen escaped. Ich wollte eine Bash-Funktion erstellen, die Markdown zurückgibt, wenn ein Bild übergeben wird, aber ich bin auf die Ausrufezeichen-Barriere gestoßen.
! selbst wird normalerweise nicht viel verwendet, aber es ist ein ziemlich praktischer Befehl. Es ist bekannt, dass Sie den Verlauf mit Strg+R anzeigen können, aber wenn Sie beispielsweise pwd ausführen und dann !p oder !pw ausführen, wird pwd ausgeführt. So etwas. Das Escapen davon war jedoch ziemlich knifflig.
bash - Wie man ! Ausrufezeichen in Bash escaped (140827)|teratail
Frage
Wie escaped man ! Ausrufezeichen in Bash?
$ echo "\)"
\
Ich escape mit , aber sogar \ wird ausgegeben…
Antwort
echo '!'"[$(echo "hgoe")]($(echo "hgoe"))"
Eindrücke
Also in Bash können Sie Strings mit ” und "" verketten. Das wusste ich nicht. Normalerweise kann man das nicht, oder? Es ist trickreich, oder sollte ich sagen.
Normalerweise würden Sie denken, etwas wie echo "" + ” ; zu machen, aber das ist einzigartig für die Kommandozeile.