Als «shell» getaggte Fragen

Die Shell ist die Befehlszeilenschnittstelle von Unix. Sie können Befehle interaktiv in eine Shell eingeben oder Skripts schreiben, um Aufgaben zu automatisieren. Verwenden Sie dieses Tag für Fragen zu / bin / sh und den meisten kompatiblen Shells (ash, bash, ksh, zsh,…). Überprüfen Sie Shell-Skripte mit Fehlern auf http://shellcheck.net, bevor Sie sie hier veröffentlichen.

3
Wie kann ich erkennen, ob ich in einer Subshell bin?
Ich versuche, eine Funktion zu schreiben, die die Funktionalität des exiteingebauten Moduls ersetzt, um zu verhindern, dass ich das Terminal verlasse. Ich habe versucht, die SHLVLUmgebungsvariable zu verwenden, aber sie scheint sich innerhalb von Subshells nicht zu ändern: $ echo $SHLVL 1 $ ( echo $SHLVL ) 1 $ bash …
24 bash  shell  exit  subshell 


3
Gibt es noch Systeme mit einer / bin / sh-Binärdatei?
/bin/sh, die 1977 erstellte Bourne-Shell , war früher die Standard-Shell für Unix-Systeme. Heutzutage existiert diese Datei immer noch, meistens jedoch nur als symbolische Verknüpfung mit der auf dem System installierten POSIX-kompatiblen Standard-Shell: Auf RHEL / CentOS verweist es auf /bin/bashdie Bourne Again-Shell Unter Ubuntu Linux zeigt es auf /bin/dashdie Debian …


2
Was bedeutet $ {PATH: +: $ {PATH}}?
Ich habe kürzlich Folgendes in meinem Cygwin-Profil festgestellt: /usr/local/bin:/usr/bin${PATH:+:${PATH}} Was heißt das? Warum ist nicht nur $ PATH? Ist dies ein 'wenn $ PATH existiert, dann addiere: $ PATH'? Mein Ziel ist es, die Reihenfolge auszutauschen und die Cygwin-Pfade hinter den Windows-Pfad zu setzen. In der Vergangenheit hätte ich $PATH:/usr/local/bin:/usr/bin …



3
Umbenennen des aktuellen Verzeichnisses aus einer Shell - möglich?
Ist es möglich, das aktuelle Arbeitsverzeichnis in einer Shell umzubenennen (in meinem speziellen Fall Bash)? Wenn ich dies auf einfache Weise versuche, erhalte ich einen Fehler: nathan@nathan-desktop:/tmp/test$ mv . test2 mv: cannot move ‘.’ to ‘test2’: Device or resource busy Gibt es eine andere Möglichkeit, ohne das aktuelle Verzeichnis zu …
24 shell  rename 

4
Beginnend mit den Argumenten bash: -lt und -gt
Ich fange mit bash an und habe folgendes herausgefunden: if test $first -lt $second then echo $first is lower than $second else if test $first -gt $second then echo $first is higher than $second else echo $first and $second are equals fi fi Um das Skript zu lesen und auszuführen, …
24 bash  shell  test 


8
Wie beziehe ich die Umgebungsvariablen eines anderen Prozesses?
Wenn ich prüfe, /proc/1/environsehe ich eine durch Null-Bytes getrennte Zeichenfolge der 1Umgebungsvariablen des Prozesses . Ich möchte diese Variablen in meine aktuelle Umgebung integrieren. Gibt es eine einfache Möglichkeit, dies zu tun? Die procManpage gibt mir einen Ausschnitt, mit dem sich jede Umgebungsvariable zeilenweise ausdrucken lässt (cat /proc/1/environ; echo) | …

1
finden und rsync?
Ich möchte in der Lage sein, über 14 Tage und über 10.000 nach Dateien zu suchen und diese gefundenen Dateien dann mit einem Ziel zu synchronisieren. Gibt es eine Möglichkeit, diese beiden Befehle zu kombinieren? find ./ -mtime +14 -size +10k rsync --remove-sent-files -avz /src /dest
24 bash  shell  find  pipe  rsync 


3
Warum nicht pathless shebangs verwenden?
Ist es möglich, dass ein Shebang den Namen des Interpreters enthält und die Shell ihn über $ PATH findet, anstatt einen Pfad zu einem Interpreter anzugeben? Wenn nicht, gibt es einen Grund dafür?
24 shell  shebang 

8
Die universellste Skriptsprache für Linux ist?
Diese Frage wurde von Stack Overflow migriert, da sie unter Unix und Linux Stack Exchange beantwortet werden kann. Vor 7 Jahren migriert . Wir schreiben Skripte für Linux-Systeme. Es gab einige Debatten darüber, welche der am weitesten verbreiteten Linux-Skriptsprachen verwendet werden soll. Bash, SH, Posix? Was?

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.