Als «quoting» getaggte Fragen

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


2
Es ist mit einem Platzhalter
Dies funktioniert vom Terminal aus: ls /dev/sda* Ich möchte es in einem Bash-Skript mit einer Variablen. Ich habe es versucht: device="a" ls "/dev/sd"$device"*" Aber ich bekomme den Fehler : ls: cannot access '/dev/sda*': No such file or directory.

2
Warum erweitert sich dash \\\\ anders als bash?
Ich habe ein kleines Open-Source-Projekt, das ich aus verschiedenen Gründen versucht habe, in einem einigermaßen portablen Shell-Skript zu schreiben. Die automatisierten Integrationstests prüfen unter anderem, ob feindliche Zeichen in Pfadausdrücken richtig behandelt werden. Benutzer mit /bin/shbereitgestellt von bashsehen einen Fehler in einem Test, den ich auf Folgendes vereinfacht habe: echo …

2
So ändern Sie einen Dateinamen mit <> Zeichen
Ich habe ein Skript ausgeführt, das einen Oracle-Tablespace erstellt, aber vergessen, den Pfad im Skript zu ändern. Das Skript alter tablespace enthielt data2. Wenn Sie eine Datendatei umbenennen möchten, schalten Sie normalerweise den Tabellenbereich offline und benennen diese Datei um. Ich bekomme den Fehler: mv &lt;oracle path&gt;data2.dbf data2.dbf -bash: syntax …


1
So extrahieren Sie die Zeichenfolge zwischen zwei \ n in einer Datei
Ich habe eine Datei mit Muster &lt;span class="WebRupee"&gt;Rs.&lt;/span&gt;\n29\n&lt;br/&gt;&lt;font style="font-size:smaller;font-weight:normal"&gt;\n3 days\n&lt;/font&gt;&lt;/td&gt;, &lt;td class="pricecell"&gt;&lt;span class="WebRupee"&gt;Rs.&lt;/span&gt;\n59\n&lt;br/&gt;&lt;font style="font-size:smaller;font-weight:normal"&gt;\n7 days\n&lt;/font&gt;&lt;/td&gt;, &lt;td class="pricecell"&gt;&lt;span class="WebRupee"&gt;Rs.&lt;/span&gt;\n99\n&lt;br/&gt;&lt;font style="font-size:smaller;font-weight:normal"&gt;\n12 days\n&lt;/font&gt;&lt;/td&gt; Ich möchte die Werte 29, 3 Tage, 59 usw. im Grunde der Wert zwischen \n value \n Ich habe viele Orte konsultiert, weiß aber nicht, wie ich den \ n …

3
Schleife über eine Zeichenfolge in zsh und Bash
Ich möchte diese Bash-Schleife konvertieren: x="one two three" for i in ${x} do echo ${i} done auf diese Weise mit Bash und zsh zu arbeiten Diese Lösung funktioniert: x=( one two three ) for i in ${x[@]} do echo ${i} done Wie auch immer, ich ändere xvon einem String zu …
7 bash  zsh  quoting  variable 


5
`xargs` mit Leerzeichen in Dateinamen
Ich versuche, nur Nicht-Bilddateien aufzulisten und nur in den letzten 500 Dateien zu suchen. Also renne ich ls -t | head -500 | file | grep -v 'image' was nicht richtig ist: es zeigt eine Hilfemeldung an. Ändern in ls -t | head -500 | xargs file | grep -v …



3
Muss ich awk-Variablen in Anführungszeichen kapseln, um sie zu bereinigen?
Nach einer Antwort zum Stackoverflow ist das Einkapseln von Bash-Variablen in doppelte Anführungszeichen meines Erachtens eine ziemlich sichere Methode, um Benutzereingaben zu bereinigen. Was ist mit awk-Variablen? Zum Beispiel, wenn ich so etwas habe wie: awk -v SOURCEIP="$SOURCEIP" -v REVERSEDNS="$REVERSEDNS" '{ gsub(/^_TMPSOURCEIP_/, SOURCEIP); gsub(/^_TMPREVERSEDNS_/, REVERSEDNS); print }' /home/foo/footemplate Sollte ich …

3
cp funktioniert nicht im Skript, sondern im Terminal
Nun, das ist ein seltsames Problem, ich habe diese Art von Skript: CWD="$(cd -P -- "$(dirname -- "$0")" &amp;&amp; pwd -P)" RESOURCES_PATH="${CWD}/resources" PROJECT_NAME="something" DRUSH_ALIASES_EXAMPLE_PATH="${RESOURCES_PATH}/example.aliases.drushrc.php" DRUSH_ALIASES_PATH="~/.drush/${PROJECT_NAME}.aliases.drushrc.php" cp ${DRUSH_ALIASES_EXAMPLE_PATH} ${DRUSH_ALIASES_PATH} echo "cp ${DRUSH_ALIASES_EXAMPLE_PATH} ${DRUSH_ALIASES_PATH}" Wenn ich versuche, diese Art von Skript auszuführen, wird folgende Fehlermeldung angezeigt: "cp: Es kann keine reguläre Datei" …
7 bash  shell  quoting 

1
Variabel in sed
Ich habe eine Datei, die Dateinamen mit absolutem Pfad enthält. In der Mitte dieses Pfades befindet sich ein Variablenverzeichnis. Wenn ich den variablen Teil hart codiere, funktioniert er einwandfrei. Wenn ich ihn jedoch durch den Variablennamen ersetze, sedfunktioniert der Teil nicht. Der sedTeil besteht darin, das Muster oder in diesem …

3
Bash: Befehlszeile mit optionalen Argumenten
Ich verwende diese Art von Code: #!/usr/bin/env bash set -u exclude1='--exclude=/path/*' exclude2='--exclude=/path with spaces/*' exclude3='' # any 'exclude' can be empty tar -czf backup.tgz "$exclude1" "$exclude2" "$exclude3" 2&gt;&amp;1 | grep -i 'my_reg_exp' &gt; error.log RESULT=("${PIPESTATUS[@]}") ... etc ... Wenn ich diesen Code ausführe, wird folgende Fehlermeldung angezeigt: tar: : Cannot …

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.