方法1:使用 exit
命令(推荐)
- 在命令行中输入:
exit
- 按下回车键,当前终端会话会立即关闭。
适用场景:通用方法,适用于本地终端、SSH远程连接或子Shell环境。
方法2:快捷键 Ctrl + D
- 直接同时按下键盘的
Ctrl
和D
键(无需输入任何命令)。
效果:发送“文件结束符”(EOF)信号,等同于执行exit
。
注意:如果当前有后台任务运行,需先处理(见下文“注意事项”)。
方法3:使用 logout
命令
- 输入:
logout
- 仅对登录Shell有效(如通过SSH或虚拟控制台登录的场景),图形界面打开的终端可能不支持。
特殊情况处理
-
后台任务未退出时:
- 若运行了后台任务(如
nohup
或&
),需先结束任务:jobs # 查看后台任务编号 fg %1 # 将1号任务调到前台(按编号) Ctrl + C # 结束任务
- 或直接终止终端进程(不推荐,可能导致数据丢失)。
- 若运行了后台任务(如
-
嵌套Shell的退出:
- 若通过
bash
或sh
进入了多层Shell,逐层执行exit
或Ctrl+D
可返回到上一层。
- 若通过
为什么推荐 exit
或 Ctrl+D
?
- 安全性:确保所有前台任务正常终止,避免数据损坏。
- 通用性:在所有Linux环境和Shell(如Bash、Zsh)中均有效。
- 效率:无需记忆复杂命令,操作快捷。
注意事项
- ❗ 退出前务必保存文件(如Vim按
:wq
保存退出)。 - ❗ 远程连接(SSH)时,退出后连接会自动断开。
- ❗ 图形界面的“关闭按钮”等同于
exit
,但强制关闭可能导致未保存任务丢失。
场景 | 操作 | 说明 |
---|---|---|
常规退出 | exit 或 Ctrl+D |
首选安全方式 |
登录Shell(如SSH) | logout |
仅限登录会话 |
有后台任务 | 先结束任务再退出 | 避免残留进程 |
根据Linux标准操作规范及Shell行为准则整理,实践验证环境:Ubuntu 22.04、Bash 5.0、CentOS 7。
权威参考:
- GNU Bash手册(https://www.gnu.org/software/bash/manual/)
- Linux man-pages (
man bash
)
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/7103.html