To jest moje zrozumienie o wykorzystaniu &, disownoraz nohup:
<command>Uruchamia proces w aktualnym terminalabashprzykład w nowej (czyli proces jest wymieniony jakobashpracy nowej istdin,stdoutistderrnadal są związane z terminal ); nie jest odporny na zawieszanie się ;<command> &Uruchamia proces w aktualnym terminalabashprzykład w tle (to proces jest wymieniony jakobashpracy tła istdin,stdoutistderrnadal są związane z terminal ); nie jest odporny na zawieszanie się ;<command> & disown: Uruchamia proces w bieżącym terminalubashprzykład, w tle , ale proces jest odłączony odbashlisty „s zatrudnienia” (czyli proces nie jest wymieniony jakobashpierwszego planu / tła pracy istdin,stdoutistderrnadal są zobowiązane do terminalu ); odporny na zawieszanie się ;nohup <command> & disown: Uruchamia proces w bieżącym terminalubashprzykład, w tle , ale proces jest odłączony odbashlisty „s zatrudnienia” (czyli proces nie jest wymieniony jakobashpierwszego planu / tła pracy istdin,stdoutistderrsą nie nadal związany z terminalem ) ; odporny na zawieszanie się ;
Tak więc, oprócz nohup <command> & disownblokowania stdini przekierowanie stdouti stderraby nohup.outdomyślnie, wydaje mi się, może to być uznane za całkowicie równoważne <command> & disown.
Czy powyższe wszystko jest poprawne? Jakieś nieporozumienie?
bashinstancji nadrzędnej nie zabije procesu