Linux Shell控制键与提示符异常
约 646 字大约 2 分钟
2026-08-29
本文两部分:一是终端最实用的控制键速查——尤其是不小心按了 Ctrl+S 导致终端"假死"这种高频误会;二是登录后提示符变成 -bash-4.2$ 的原因与修复。基础命令用法见Linux常用命令入门。
控制键速查
| 按键 | 作用 | 说明 |
|---|---|---|
Ctrl+C | 中断当前命令 | 强行终止前台进程 |
Ctrl+Z | 暂停当前命令 | 挂起到后台,配合 jobs / fg / bg |
Ctrl+D | 结束输入 / 退出登录 | 相当于 exit,空提示符下按下会关闭会话 |
Ctrl+S | 冻结终端输出 | 终端"假死",不是死机,按 Ctrl+Q 恢复 |
Ctrl+Q | 恢复终端输出 | 与 Ctrl+S 成对出现 |
Ctrl+L | 清屏 | 相当于 clear |
Ctrl+R | 搜索历史命令 | 输入关键词,继续按可翻更早记录 |
Ctrl+A / Ctrl+E | 跳到行首 / 行尾 | 比 Home / End 顺手 |
Ctrl+U / Ctrl+K | 删除光标前 / 后内容 | 输错命令快速重来 |
Ctrl+W | 删除光标前一个单词 |
终端突然敲不动字了?
先按 Ctrl+Q。查看大文件、长输出时误按 Ctrl+S 冻结了屏幕,是最常见的"服务器卡死"误会——其实会话还活着。
Ctrl+Z 与前后台切换
sleep 300 # 执行中按 Ctrl+Z 暂停
jobs # 查看:[1]+ 已停止 sleep 300
bg %1 # 任务 1 转入后台继续运行
fg %1 # 再调回前台需要长时间常驻的后台任务,更推荐 tmux / nohup,参见保持SSH会话不断开。
提示符变成 -bash-4.2$ 怎么回事
正常应是 [root@host ~]# 样式,突然变成 -bash-4.2$(数字随 bash 版本变化),说明两件事同时发生:
- bash 没读到配置文件(
~/.bash_profile/~/.bashrc被误删); - 当前目录不是家目录——多半是家目录本身丢了。
先确认家目录状态:
echo $HOME # 家目录路径 ls -ld $HOME # 目录是否还存在 ls -a $HOME # .bashrc 等隐藏文件是否还在配置文件丢了(家目录还在),从骨架目录恢复:
cp /etc/skel/.bash* $HOME/ chown $(id -un):$(id -gn) $HOME/.bash*家目录整个丢了,重建并恢复配置:
sudo mkdir -p $HOME sudo cp /etc/skel/.bash* $HOME/ sudo chown -R $(id -un):$(id -gn) $HOME警告
重建家目录只能恢复 shell 环境,原目录里的数据无法找回。新建用户时用
useradd -m可自动创建家目录。退出重新登录,提示符应恢复为
[root@host ~]#样式。
