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.

2
Ist eine Sub-Shell dasselbe wie eine Child-Shell?
Es gibt diese beiden Namen: eine Subshell und eine Child-Shell . Ja, ein untergeordneter Prozess wird folgendermaßen gestartet: sh -c 'echo "Hello"' ( echo "hello" ) echo "$(echo "hello") echo "hello" | cat Sind alle gleichwertig und haben denselben Namen? Teilen alle die gleichen Eigenschaften? POSIX hat diese Definition : …

2
Kannst du $ nicht im Skript verwenden?
Ich frage mich nur, warum das nicht funktioniert #!/bin/bash ls /bin ls !$ Ich erwarte, ls /binzweimal zu laufen , aber der zweite wirft Fehler auf, wie !$nicht interpretiert wurde Habe ich etwas verpasst oder !$nur in der Kommandozeile gearbeitet? Ich konnte kein relevantes Teil in man bash(auf dem Mac) …
11 bash 

2
Was ist der Unterschied zwischen & 6 und / dev / fd / 6?
Zum Lesen aus dem Dateideskriptor 6 kann ich <&6oder </dev/fd/6(aka /proc/self/fd/6) verwenden. Normalerweise funktionieren beide gleich gut. Wenn dieser Dateideskriptor jedoch ein Socket ist, passieren seltsame Dinge. Beispielsweise: $ bash -c 'ls -l /dev/fd/6;cat /dev/fd/6' 6</dev/tcp/localhost/12345 lrwx------ 1 michas michas 64 Jan 10 19:50 /dev/fd/6 -> socket:[315010] cat: /dev/fd/6: No …

3
So erweitern Sie Bash-Aliase
Wie erstelle ich einen Alias, der tatsächlich einen anderen gleichnamigen Alias ​​in Bash erweitert? Warum: Früher habe ich mich GREP_OPTIONSauf .bashrcso etwas eingestellt: GREP_OPTIONS="-I --exclude=\*~" Ich hatte auch ein Skript (sagen wir mal setup-java.sh), das ich aufrufen würde, bevor ich an einigen Java-Projekten arbeitete. Es würde die Zeile enthalten: GREP_OPTIONS="$GREP_OPTIONS …
11 bash  grep  alias 

1
Bash-Alias ​​mit einem Leerzeichen als Teil des Befehls
Ich versuche, einen Bash-Alias ​​zu erstellen, in dem der Alias ​​selbst ein Leerzeichen enthält. Die Idee ist, dass der Alias ​​(dh con) für steht sudo openvpn --config /path/to/my/openvpn/configs/. Dies führt zu einem lesbaren Befehl, wenn der conAlias ​​verwendet wird. dh: `con uk.conf` == `sudo openvpn --config /path/to/my/openvpn/configs/uk.conf` Ich verstehe, dass …




2
Warum verbindet sich Bash mit Flüchen?
Ich glaube, ich habe das schon einmal bemerkt, aber nie viel darüber nachgedacht. jetzt bin ich neugierig. > ldd /bin/bash linux-vdso.so.1 => (0x00007fff2f781000) libtinfo.so.5 => /lib64/libtinfo.so.5 (0x00007f0fdd9a9000) libdl.so.2 => /lib64/libdl.so.2 (0x00007f0fdd7a5000) libc.so.6 => /lib64/libc.so.6 (0x00007f0fdd3e6000) /lib64/ld-linux-x86-64.so.2 (0x00007f0fddbf6000) Libtinfo ist Teil von ncurses. Dies ist ein Fedora-System, aber es ist dasselbe …
11 bash  readline  ncurses 




6
Entfernen Sie Zeilen aus einer Datei, abhängig von den Zeilen in einer anderen Datei
Die Datei file1.txt enthält Zeilen wie: /api/purchase/<hash>/index.html Beispielsweise: /api/purchase/12ab09f46/index.html Die Datei file2.csv enthält Zeilen wie: <hash>,timestamp,ip_address Beispielsweise: 12ab09f46,20150812235200,22.231.113.64 a77b3ff22,20150812235959,194.66.82.11 Ich möchte file2.csv filtern und alle Zeilen entfernen, in denen der Wert von Hash auch in file1.txt vorhanden ist. Das heißt: cat file1.txt | extract <hash> | sed '/<hash>/d' file2.csv oder …


4
Beenden eines Shell-Skripts mit verschachtelten Schleifen
Ich habe ein Shell-Skript mit verschachtelten Schleifen und habe gerade herausgefunden, dass "exit" das Skript nicht wirklich beendet, sondern nur die aktuelle Schleife. Gibt es eine andere Möglichkeit, das Skript unter bestimmten Fehlerbedingungen vollständig zu beenden? Ich möchte "set -e" nicht verwenden, da es akzeptable Fehler gibt und es zu …
11 bash  shell  scripting  exit 

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.