Als «bash» getaggte Fragen

Fragen speziell zu GNUs Bourne Again SHell im Gegensatz zu anderen Bourne / POSIX-Shells. Verwenden Sie bei Fragen zu Unix-Shells im Allgemeinen stattdessen das Tag / shell.

1
Ist es gefährlich, immer Extglob zu haben?
Wenn ich mich einschalte extglob, um Dinge wie zu tun shopt -s extglob rm !(*.html|*.txt) # remove everything except html and txt files Ist es unklug, danach weiterzumachen extglob? Gibt es irgendwelche Vorbehalte, es ständig zu haben?
7 bash  wildcards 

2
Warum funktioniert die Pfadvervollständigung in Bash nicht immer?
Bei verschiedenen Bash-Umgebungen (verschiedenen Installationen) habe ich unterschiedliche Verhaltensweisen in Bezug TABauf die Pfadvervollständigung, wenn ich danach auf die Befehlszeile drücke. Wo wird das gehandhabt? Ein konkretes Beispiel: Ich laufe cmakemit einem -DArgument: cmake -DCMAKE_TOOLCHAIN_FILE=~/x-too<TAB> es macht nichts. Während (beachten Sie den Abstand zwischen =und~ cmake -DCMAKE_TOOLCHAIN_FILE= ~/x-too<TAB> vervollständigt zu …

4
Ist es möglich, einen Teil eines Befehls zu benennen, um ihn später im selben Befehl wiederzuverwenden?
Wenn ich eine aufgerufene Datei longfilevon /longpath/nach verschieben möchte, /longpath/morepath/kann ich so etwas tun mv (/longpath)/(longfile) $1/morepath/$2 dh kann ich die Bash wissen lassen, dass sie sich an einen bestimmten Teil der Eingabe erinnern soll, damit ich sie später in derselben Eingabe wiederverwenden kann? (Im obigen Beispiel verwende ich einen …

1
Wie kann die Vervollständigung der Bash-Registerkarte mit dem schreibgeschützten Dateisystem ausgeführt werden?
Ich habe das Dateisystem meines RaspberryPi (Raspbian - Jessie) absichtlich so konfiguriert, dass es schreibgeschützt ist. Eines der Dinge, die (noch) nicht funktionieren, ist die Tab-Vervollständigung (auch bekannt als Auto-Vervollständigung) in Bash, wo ich häufig den folgenden Fehler erhalte: Bash: Temporäre Datei für Here-Document: Schreibgeschütztes Dateisystem kann nicht erstellt werden …



1
Festlegen eines IFS für ein Bash-Skript
Der typische Fall ist IFS= read. Das Thema wird in diesem Thread sehr gut erklärt: Warum ist das Setzen einer Variablen vor einem Befehl in bash legal? Um ein vollständiges Bild zu erhalten, wäre ich Ihnen sehr dankbar, wenn Sie erklären könnten, warum das folgende Skript nicht wie erwartet funktioniert. …


2
Umleiten der Standardfehlerausgabe an die Bash-Variable
Hier ist ein C-Code-Snippet, das Folgendes verursacht segfault: // segfault.c #include <string.h> int main() { memset((char *)0x0, 1, 100); return 1; } Kompilieren Sie es mit: gcc segfault.c -o segfault Wenn von Bash ausgeführt: $ ./segfault Segmentation fault (core dumped) Jetzt habe ich den Anruf in ein Bash-Skript eingeschlossen. Es …


5
Indirekte Variablenbewertung
Ich versuche, einen einfachen Wert für $ AR1_p1 zu drucken, aber die Variable $ i wird nicht ausgewertet. for i in 1 2 3 4 do AR1_p1=22 AR1_p2=23 AR1_p3=24 AR1_p3=25 echo $AR1_p$i done Es ist wie eine dynamische Verkettung. Irgendwelche Vorschläge, wie man das behebt?.
7 bash  shell 

2
Unterbrechen Sie einen Vorgang still mit Strg-z
In meinem aktuellen Workflow verwende ich häufig STRG-z, um Vim anzuhalten, damit ich schnell einige Befehle eingeben kann, bevor ich die Bearbeitung meines Codes mit fg fortsetze ( dank des praktischen ZSH-Tipps in diesem Blog-Beitrag ist es wieder STRG -z ). Das Problem ist, dass mein Terminal mit Meldungen zur …
7 bash  vim  zsh 


3
Dateiname automatisch erhöhen
Ich muss einige doppelte Dateien sammeln und möchte Namenskollisionen vermeiden. Das Problem ist, dass diese Dateisammlung möglicherweise durch eine andere Ausführung meines Skripts hinzugefügt wird, bevor die Dateien bereinigt werden und die Anzahl nur weiter erhöht werden soll. Ich entschied mich für eine einfache till-Schleife, um die Zahl wie folgt …

3
Stdin in ein Bash-Array einlesen
Ich möchte das Äquivalent von erreichen: list=() while read i; do list+=("$i") done <<<"$input" mit IFS=$'\n' read -r -a list <<<"$input" Was mache ich falsch? input=`/bin/ls /` IFS=$'\n' read -r -a list <<<"$input" for i in "${list[@]}"; do echo "$i" done Dies sollte eine Liste von drucken /, aber ich …
7 bash  array  read 

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.