Nohup以及远程shell上注销和退出之间的区别


5

我可以出于工作目的访问远程Linux Shell。我使用保持了python脚本在后台运行nohup

现在,如果要退出会话,使用logoutexit命令有什么区别?在这两种情况下,我的脚本都可以继续运行吗?


1
当我想确保退出控制台后仍能继续运行控制台时,我发现最好使用屏幕
Marcelo Cantos

Answers:


2

logout是外壳程序的内部命令。因此,通常答案是依赖于外壳的。来自man bash

logout –退出登录外壳。

来自man zsh

logout [ n ] –与exit相同,除了它仅在登录shell中起作用。

因此,它们是完全相同的,但是注销将仅拒绝针对非登录外壳工作。什么是登录外壳,可以在手册页中阅读。


exit也是shell的内部命令。
圣保罗Ebermann

1
(另外:我不认为有一个类似退出的命令仅适用于登录shell的意义。反之,则更有用(例如“仅在
未登录

0

在您的本地终端上尝试两者。如果要使用“注销”,则需要“登录”。默认情况下,在终端中您永远不会通过登录启动外壳程序,因此,如果要关闭终端,则需要使用“退出”。它不是“登录外壳”。

在远程ssh中,shell无关紧要,因为您使用的是“ login shell”。当您使用nohub或类似的命令时,您是从实际的shell中“分离”命令,因此,当您关闭shell时,该过程不会消失。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.