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
Was bedeutet "wenn!" bedeuten?
Ich bin auf eine if / then-Aussage wie diese gestoßen: if ! foo ; then echo "blah" exit 1 fi Was bedeutet konkret if !? "Wenn das Ergebnis von foonicht wahr ist?" "Wenn der Exit-Code von foonicht 0 ist"?
7 shell 

2
Wie überprüfe ich, ob ein Prozess ein Daemon ist oder nicht?
Ich habe einen kleinen Daemon geschrieben, der beim Booten beginnt und alles perfekt macht, wie das Schreiben in die Protokolldatei. Aber ich möchte wissen, wie wir überprüfen können, ob dieser Prozess ein Daemon ist oder nicht. Mein Professor hat mir von einem Befehl erzählt ps -xj | grep daemon(mein Dateiname …
7 bash  shell  c  daemon 


4
Gibt es einen Unterschied zwischen read, head -1 und sed 1q?
Die folgenden Befehle scheinen ungefähr gleichwertig zu sein: read varname varname=$(head -1) varname=$(sed 1q) Ein Unterschied ist, dass readeine Shell eingebaut ist headund sednicht. Gibt es außerdem einen Unterschied im Verhalten zwischen den drei? Meine Motivation ist es, die Nuancen der Shell und der wichtigsten Dienstprogramme wie besser zu verstehen …
7 bash  shell  sed  head  read 


6
Erhalten Sie Werte eines Abschnitts einer Datei
Ich habe eine Konfigurationsdatei im folgenden Format. <Title> [part1] A.File = a A.Val = val1 B.File = a B.Val = val1 [part2] A.File = a1 A.Val = val2 B.File = a B.Val = val1 Ich möchte nur Werte aus dem ersten Teil extrahieren. #!/bin/sh getCalibDate() { file="/path/of/config/file" value=`cat ${file} | …

1
Erweitern Sie ~ ,. und `..`
Da ~, .und ..sind spezielle Verzeichnisse, warum sind sie unterschiedlich im folgende Beispiel behandelt? $ echo ~ /home/tim $ echo .. .. $ echo . . ~ wird in das Verzeichnis erweitert, die anderen beiden jedoch nicht. Die anderen beiden sind buchstäblich erweitert, aber ~nicht.




3
stdin, stderr, redirection und logs
Gibt es einen Unterschied zwischen diesen beiden Zeilen? /home/user/script.sh >> /home/user/stdout_and_error.log 2>&1 /home/user/script.sh 2>&1 >> /home/user/stdout_and_error.log zu wissen, dass ich die Standard- und Ausführungsfehler des Skripts in die Protokolldatei einfügen möchte. Wenn es keine Unterschiede gibt, was ist, wenn ich die Protokollierung selbst protokollieren möchte?

1
Wo wird $ _ von POSIX definiert?
In den Kommentaren zur akzeptierten Antwort auf diese Unix & Linux StackExchange-Frage wird angegeben, dass dies $_"einer von nur 7 speziellen Parametern ist, die von POSIX definiert wurden". Ich kann diese Definition nicht finden, obwohl ich acht andere von POSIX definierte spezielle Parameter finden kann, die ich $_in den Manpages …
7 bash  shell  ksh  posix 

2
Wie werden ausführbare Dateien in einer leeren Umgebung gefunden?
Zu Versuchszwecken habe ich eine Binärdatei erstellt, die das druckt $PATHund whichwie folgt aufruft : #include <stdlib.h> #include <stdio.h> int main() { char *path = getenv("PATH"); if (path) printf("got a path: %s\n", path); else printf("got no path\n"); system("which which"); return 0; } wenn ich es in einer leeren Umgebung über …
7 shell  binary 


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.