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.

4
Leiten eines Befehls durch einen Farbfilter
Gibt es so etwas in Unix? $ echo "this should show in red" | red $ echo "this should show in green" | green $ echo "this should show in blue" | blue Hiermit meine ich nicht, dass wörtlicher Farbcodetext angezeigt wird (zum Beispiel, um in eine Datei eingefügt zu …
13 bash  terminal  colors 

1
Auswertung der arithmetischen Expansion in bash
Die folgende Zeile erzeugt file_c-6.txtaber Ausgaben 5: $ i=5; ls file_a-${i}.txt file_b-${i}.txt > file_c-$(( ++i )).txt; echo $i 5 $ cat file_c-6.txt file_a-5.txt file_b-5.txt Wenn man es entfernt >, würde es auflisten file_c-6.txtund ausgeben 5: Ich kann nicht verstehen, warum es iim ersten Beispiel nicht den Wert von behält . …
13 bash 

2
Warum unterbricht "bash -x" dieses Skript?
Ich habe ein Skript, das misst, wie lange ein Befehl ausgeführt wird. Es benötigt den timeBefehl "real" , was bedeutet, dass beispielsweise eine Binärdatei enthalten ist /usr/bin/time(da die eingebaute Bash nicht über das -fFlag verfügt). Unten ein vereinfachtes Skript, das debuggt werden kann: #!/bin/bash TIMESEC=$(echo blah | ( /usr/bin/time -f …


2
So zeigen Sie Steuerzeichen (^ C, ^ D, ^ [,…) in der Shell unterschiedlich an
Wenn Sie Steuerzeichen in die Shell eingeben, werden diese in der sogenannten "Caret-Notation" angezeigt. Escape zum Beispiel wird wie ^[in Caret-Notation geschrieben. Ich mag es, meine Bash-Shell so anzupassen, dass sie cool aussieht. Ich habe zum Beispiel meine geändert PS1und PS2eingefärbt. Ich möchte jetzt, dass Steuerzeichen auch ein einzigartiges Erscheinungsbild …

2
Wie inkrementiere ich lokale Variablen in Bash?
Daten 1 \begin{document} 3 Code #!/bin/bash function getStart { local START="$(awk '/begin\{document\}/{ print NR; exit }' data.tex)" echo $START } START2=$(getStart) echo $START2 was zurückkommt 2aber ich will 3. Ich ändere das Ende erfolglos durch diese Antwort über Wie kann ich Zahlen in ein Bash-Skript einfügen : START2=$((getStart+1)) Wie können …

7
Wie formatiere ich die Datumsausgabe mit Leerzeichen als Variable im Skript?
Ich möchte den dateBefehl mit einer netten Formatierung wie folgt ausführen: $ date +"%Y-%m-%d %H:%M:%S" 2015-09-17 16:51:58 Ich möchte dies jedoch in einer Variablen speichern, sodass ich das Skript folgendermaßen aufrufen kann: echo "$(nice_date) [WARNING] etc etc" Es funktioniert jedoch nicht $ nice_date="date +%Y-%m-%d %H:%M:%S" $ echo "$($nice_date)" date: extra …
13 bash  date 

3
Wie kann man den Befehl "cat> file_name << blah" verstehen?
Im folgenden Befehl nimmt cat den Inhalt von here-doc und leitet ihn in die Datei conf um: cat &gt; conf &lt;&lt; EOF var1="cat" var2="dog" var3="hamster" EOF Wie kann man hier die Reihenfolge der Befehle verstehen? Gibt es basherste Verfahren alles andere (hier-doc Teil) und als letzten Schritt den aussieht &gt; …

3
Unerwarteter Bash-Abschluss von ~ unter OS X
Ich drückte ~TabTabauf die Bash-Eingabeaufforderung und bekam eine unerwartete Reihe von Abschlüssen. Zuerst sah es aus wie alle Leute im /UsersVerzeichnis und noch viel mehr. Dann dachte ich, es wäre die umgekehrte Suche von Leuten mit "Heimat" -Verzeichnissen /etc/passwordoder vielleicht denjenigen, die es waren /var/empty- dies scheint ungefähr richtig zu …

2
Ist flock & exec sicher in bash?
Das "Standard" -Sperr-Snippet, das ich gesehen habe, geht ungefähr so ​​... ( flock -n 200 || exit 1; # do stuff ) 200&gt;program.lock Ist es sicher (Tests scheinen dies zu sagen), execan diesem Punkt zu verwenden? Behält der Unterprozess die Sperre bei? ( flock -n 200 || exit 1; exec …
13 bash  lock 

4
ls-Fehler beim Löschen des Verzeichnisses
Ich habe zwei Muscheln offen. Das erste befindet sich in Verzeichnis A. Im zweiten entferne ich Verzeichnis A und erstelle es dann neu. Wenn ich zur ersten Shell zurückkehre und tippe ls, ist die Ausgabe: ls: cannot open directory .: Stale file handle Warum? Ich dachte, die erste Shell (die …


3
Wie kann ich einen Prozess mit einem Namen starten, der nichts bewirkt?
Ich möchte einen Prozess starten, der nichts tut, aber noch ausgeführt wird. Angenommen, ich starte einen Prozess mit dem Namen sadhadxk, und wenn ich ihn starte pgrep -x "sadhadxk", erhalte ich die PID-Nummer zurück, wie es bei jedem normalen Prozess der Fall ist. Gibt es also eine Möglichkeit, einen Dummy-Prozess …
13 bash  process 

2
Wie können Variablen "~" für die CD verwenden?
Wie kann ich eine Variable verwenden - $BASEin meiner CD. Ich habe Folgendes versucht, aber es wird eine Fehlermeldung angezeigt $ cd ~/z/repo_1_ruby_193/ 23:23:57 durrantm Castle2012 /home/durrantm/z/repo_1_ruby_193 $ BASE="~/z" 23:24:03 durrantm Castle2012 /home/durrantm/z/repo_1_ruby_193 $ cd $BASE/repo_1_ruby_193 -bash: cd: ~/z/repo_1_ruby_193: No such file or directory 23:24:25 durrantm Castle2012 /home/durrantm/z/repo_1_ruby_193


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.