Ich habe ein Bash-Skript, das dämonisieren sollte selbst nach dem Ausführen. Meine Lösung sieht wie folgt aus:Bash: Daemonisierung durch Forking-Prozess als ein neues Kind
#!/bin/sh -xe
child() {
echo child
}
child & # fork child
echo parent
kill $$ # kill parent
jedoch selbst das gesamte Skript setzt innerhalb der Funktion child
nicht die richtige Sache zu tun scheinen. Leider wird exec &
nicht den gesamten Prozess in ein Hintergrund-Kind abzweigen.
Wie erreicht man den gewünschten Effekt?
@Inische, erweiterte Antwort. – Dummy00001
Das erklärt es! Gute Antwort! – Inian
Beachten Sie, dass, obwohl ich '/ bin/bash' explizit spezifiziere, der Trick auch mit anderen Shells funktionieren würde. Das einzige Problem ist mit den Shells, die "$ @" (oder Alternativen) nicht unterstützen, um die Argumente wörtlich an die Subshell zu übergeben. Aber außerhalb einiger kommerzieller * nix-Systeme mit sehr altem '/ bin/sh' sollten Sie keine Probleme haben. – Dummy00001