跳转到内容

Linux实用快捷键详解

课程介绍

最后我们学习一些实用的快捷键,能大大提高操作效率。Ctrl+c强制停止程序,Ctrl+d退出登录或程序,history查看历史命令,!前缀快速执行历史命令,Ctrl+r搜索历史,Ctrl+a/e跳到行首/行尾,Ctrl+左右按单词移动光标,Ctrl+l清屏。这些快捷键多练习几下就记住了。

1. 强制停止快捷键

1. 1 Ctrl+c - 强制停止程序运行

功能说明:

  • 强制停止卡住的程序运行
  • 取消当前正在输入的命令

应用场景:

场景1:停止卡住的程序

bash
# 例如tail命令卡住了
tail -f test.txt
# 按Ctrl+c强制停止

场景2:取消错误的命令输入

bash
# 输入错误的命令
cd abcdefghijklmnopqrstuvwxyz
# 发现输错了,按Ctrl+c取消,重新输入

2. 退出登录快捷键

2. 1 Ctrl+d - 退出或登出

功能说明:

  • 退出当前账户的登录
  • 退出某些特定程序的专属页面

应用场景:

场景1:退出切换的用户

bash
# 切换到yege用户
su - yege
# 按Ctrl+d退出登录,返回原用户

场景2:退出Python解释器环境

bash
# 进入Python解释器
python
# 按Ctrl+d退出Python环境

3. 历史命令搜索技巧

3. 1 history命令 - 查看历史命令

功能说明:

  • 查看历史输入过的所有命令
  • 序号越大表示命令越新(越近执行)

基本用法:

bash
# 查看所有历史命令
history

# 查看最近10条历史命令
history 10

结合grep过滤:

bash
# 查看以ch开头的历史命令
history | grep "^.*ch"

# 查看包含特定关键字的历史命令
history | grep "mysql"

3. 2 感叹号前缀 - 快速执行历史命令

功能说明:

  • 使用感叹号作为命令前缀,自动执行上一次匹配前缀的命令
  • 从历史命令底部向上搜索第一个匹配项

基本用法:

bash
# 执行最近一次以p开头的命令(如python)
!p

# 执行最近一次以t开头的命令(如tail)
!t

# 执行最近一次以history开头的命令
!history

注意事项:

  • 仅适用于短期内的命令(2-5个命令内)
  • 对于久远的命令容易误匹配,不建议使用

3. 3 Ctrl+r - 搜索历史命令

功能说明:

  • 交互式搜索历史命令
  • 支持输入关键字进行模糊匹配
  • 可以直接执行或获取命令进行修改

基本用法:

bash
# 按Ctrl+r进入搜索模式
(reverse-i-search)`': 

# 输入关键字进行搜索
(reverse-i-search)`pass': ssh root@node2

# 直接回车执行命令
# 或按左右键获取命令进行修改

搜索示例:

bash
# 搜索包含pass关键字的命令
Ctrl+r -> pass

# 搜索包含group关键字的命令
Ctrl+r -> group

# 搜索包含test4关键字的命令
Ctrl+r -> test4

4. 光标移动快捷键

4. 1 光标快速移动

快捷键列表:

快捷键功能说明
Ctrl+a跳到行首快速移动到命令开头
Ctrl+e跳到行尾快速移动到命令结尾
Ctrl+左向左跳一个单词按单词向左移动光标
Ctrl+右向右跳一个单词按单词向右移动光标

应用场景:

场景1:快速修改命令开头

bash
# 输入的命令
cd abcdefghijklmnopqrstuvwxyz

# 按Ctrl+a跳到开头,快速修改

场景2:快速修改命令中间内容

bash
# 输入的命令
chown root hello.txt

# 按Ctrl+左跳到root位置,修改为yege
# 按Ctrl+右跳到hello位置,快速移动

5. 清屏操作

5. 1 清屏方法

方法1:快捷键Ctrl+l

bash
# 按Ctrl+l清空终端内容

方法2:clear命令

bash
# 使用clear命令清屏
clear

6. 实践操作

6. 1 综合练习

练习1:使用历史命令

bash
# 1. 执行几个不同的命令
ls -l
cd /home
pwd
history

# 2. 使用!前缀快速执行
!l    # 执行ls -l
!h    # 执行history

# 3. 使用Ctrl+r搜索
Ctrl+r -> cd    # 搜索cd相关命令

练习2:光标移动练习

bash
# 1. 输入一个长命令
echo "This is a very long command for testing cursor movement shortcuts"

# 2. 使用Ctrl+a跳到开头,修改echo为printf
Ctrl+a -> 删除echo -> 输入printf

# 3. 使用Ctrl+e跳到结尾,添加更多内容
Ctrl+e -> 输入" and more text"

# 4. 使用Ctrl+左右键跳到中间位置修改
Ctrl+左 -> 修改"very"为"extremely"

练习3:强制停止和退出练习

bash
# 1. 启动一个会卡住的命令
tail -f /var/log/syslog

# 2. 使用Ctrl+c停止
Ctrl+c

# 3. 进入Python环境
python

# 4. 使用Ctrl+d退出
Ctrl+d

7. 常见问题

7. 1 常见问题及解决方案

问题原因解决方案
Ctrl+c无法停止程序程序可能忽略了SIGINT信号尝试使用Ctrl+z或kill命令
!前缀执行了错误的命令历史命令中有多个匹配项使用Ctrl+r精确搜索
Ctrl+r搜索不到命令命令太久远已被清除增加history命令保存的行数
光标移动快捷键不生效终端不支持或配置问题检查终端设置或更换终端

7. 2 历史命令配置

增加历史命令保存数量:

bash
# 编辑~/.bashrc文件
vim ~/.bashrc

# 添加以下内容
export HISTSIZE=10000
export HISTTIMEFORMAT="%F %T "

# 使配置生效
source ~/.bashrc

课程总结

这节课我们学了8个实用的快捷键。熟练使用这些快捷键能大大提升效率!

快捷键功能应用场景
Ctrl+c强制停止/取消命令输入停止卡住程序、取消错误输入
Ctrl+d退出/登出退出用户登录、退出程序环境
history查看历史命令查找之前执行过的命令
!前缀快速执行历史命令重复执行近期命令
Ctrl+r搜索历史命令查找并执行久远命令
Ctrl+a跳到行首快速修改命令开头
Ctrl+e跳到行尾快速修改命令结尾
Ctrl+左向左跳单词快速移动光标
Ctrl+右向右跳单词快速移动光标
Ctrl+l清屏清理终端显示
clear清屏清理终端显示

课后练习

基础练习

  • 使用history命令查看最近执行的20条命令(参考答案:history 20)
  • 使用!前缀快速执行最近一次以ls开头的命令
  • 使用Ctrl+r搜索包含"cd"关键字的命令
  • 输入一个长命令,使用Ctrl+a和Ctrl+e在开头和结尾之间快速切换
  • 使用Ctrl+l清空终端屏幕

进阶练习

  • 使用Ctrl+左右键快速修改命令中的某个单词
  • 在Python环境中输入一些代码,然后使用Ctrl+d退出
  • 创建一个会卡住的tail命令,使用Ctrl+c停止它
  • 结合使用多个快捷键完成一个复杂的命令编辑任务

实战场景

场景:快速修改和执行命令

bash
# 任务:快速执行并修改以下命令
scp -r /home/user/data root@192.168.1.100:/backup/

# 要求:
# 1. 使用历史命令找到这个命令
# 2. 使用光标移动快捷键修改IP地址为192.168.1.101
# 3. 使用Ctrl+c取消并重新输入
# 4. 最终正确执行修改后的命令

评论区

专业的Linux技术学习平台,从入门到精通的完整学习路径