Als «quoting» getaggte Fragen

Zeichenfolgen werden normalerweise durch Anführungszeichen begrenzt, was das Problem des Umgangs mit Zeichenfolgen mit Anführungszeichen aufwirft.


1
Platzhalter in Anführungszeichen
Dies wird einfach sein, aber in meinen Erinnerungen würde die Verwendung von doppelten Anführungszeichen beim Erstellen von Shell-Skripten das Erweitern von Globbing und Variablen ermöglichen. Aber im folgenden Code: #!/bin/sh echo *.sh echo "*.sh" echo '*.sh' echo $LANG echo "$LANG" echo '$LANG' Ich bekomme dieses Ergebnis: bob.sh redeployJboss.sh *.sh *.sh …

2
grep und ein Dollarzeichen zu entkommen
Ich möchte wissen, welche Dateien die Zeichenfolge haben $Id$. grep \$Id\$ my_dir/mylist_of_files gibt 0 Vorkommen zurück. Ich entdeckte, dass ich verwenden muss grep \$Id$ my_dir/mylist_of_files Dann sehe ich, dass das $Idin der Ausgabe farbig ist, dh es wurde abgeglichen. Wie könnte ich den zweiten $abgleichen und warum funktioniert das nicht …



3
Wie wird ein "einfaches Anführungszeichen" ausgegeben, wenn Sonderzeichen in einfache Anführungszeichen eingeschlossen werden?
Ich lese heute ein Shell-Tutorial von http://www.tutorialspoint.com/unix/unix-quoting-mechanisms.htm In dem es erwähnt: Wenn ein einzelnes Anführungszeichen in einer auszugebenden Zeichenfolge enthalten ist, sollten Sie nicht die gesamte Zeichenfolge in einzelne Anführungszeichen setzen, sondern dies mit einem Backslash () voranstellen: echo 'It\'s Shell Programming' Ich habe es auf meinem Centos-Server versucht, es …
26 shell  quoting 

2
Wie kann man einen beliebigen einfachen Befehl über ssh ausführen, ohne die Login-Shell des entfernten Benutzers zu kennen?
ssh hat eine nervige Funktion, wenn Sie ausführen: ssh user@host cmd and "here's" "one arg" Anstatt das cmdmit seinen Argumenten hostauszuführen, verkettet es das cmdund die Argumente mit Leerzeichen und führt eine Shell aus host, um den resultierenden String zu interpretieren (ich denke, deshalb heißt sie sshund nicht sexec). Schlimmer …



5
Warum ignoriert das Echo meine Anführungszeichen?
Diese Frage wurde von Server Fault migriert, da sie unter Unix und Linux Stack Exchange beantwortet werden kann. Vor 8 Jahren migriert . Der echoBefehl enthält nicht den vollständigen Text, den ich ihm gebe. Zum Beispiel, wenn ich tue: $ echo ' echo PARAM=` grep $ARG /var/tmp/setfile | awk '{print …
24 shell  quoting  echo 

5
Warum doppelte Anführungszeichen in einem [[]] Test verwenden?
Nehmen wir an, wir haben zwei Ganzzahlen in einem Bash-Skript: value1=5 value2=3 Warum müssen wir dann im Falle eines Tests doppelte Anführungszeichen verwenden? Beispielsweise: if [[ "$value1" -eq "$value2" ]] Warum nicht einfach folgendes verwenden? if [[ $value1 -eq $value2 ]] Für mich machen die doppelten Anführungszeichen keinen Sinn.
23 bash  shell  quoting  variable  test 

2
Löschen Sie alle Dateien, die mit einem Fragezeichen beginnen
Ich habe einen Ordner, in dem ich ca. 4k Dateien habe. Einige dieser Dateien beginnen mit aa ?oder einem !Zeichen. Ich muss sie löschen, kann aber keinen entsprechenden Ausdruck finden: rm -f ./?* löscht einfach alles. Möglicherweise kann ich grepls verwenden und es weiterleiten und xargsDateien in einen anderen Ordner …

5
Wie kann ich eine Datei mit dem Namen ">" löschen?
Ich habe ein Python-Skript ausgeführt, das eine Fehlfunktion aufwies und sudozum Erstellen einer Datei mit dem Namen verwendet wurde >. Wie kann ich diese Datei entfernen? Wenn ich es versuche sudo rm >, erhalte ich natürlich den Fehler bash: syntax error near unexpected token 'newline', weil es den Anschein hat …
22 bash  quoting  filenames  rm 


2
Warum in Shell-Skripten mit einfachen Zeichen umgehen?
Ich habe gerade ein älteres Shell-Skript (geschrieben in ksh88 unter Solaris) geöffnet und festgestellt, dass sich Folgendes im gesamten Code wiederholt: [ -f $myfile ] && \rm -f $myfile Der entkommende Backslash kommt mir komisch vor. Ich weiß, dass es absichtlich ist, da diese Art der (scheinbar nutzlosen) Flucht im …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.