终端快捷键学习笔记
以下是优化润色后的内容:
终端快捷键学习笔记
前言
终端(Terminal)是开发者、系统管理员以及技术人员常用的重要工具,它为我们提供了直接与操作系统交互的方式。不同操作系统中的终端使用体验存在差异,尤其在 Linux、macOS 和 Windows 系统之间,终端的快捷键和操作方式有显著的不同。
在 macOS 上,终端有着独特的设计优势。苹果系统将 Command
键和 Ctrl
键进行了区分,使得操作更加直观和便捷。例如,Command
键通常用于与操作系统界面交互,而 Ctrl
键则专注于终端内的命令操作。这样的设计有效避免了快捷键冲突,极大提升了操作效率。
与此不同的是,Windows 系统的终端快捷键较为有限,且在某些功能上不如 Linux 或 macOS 灵活方便。尽管 Windows 提供了一些基本的快捷键,但由于历史原因,Windows 终端的功能和快捷键支持通常不如 Unix 系统中的 Shell 强大和高效,尤其在复杂操作和快捷键配置方面,Windows 终端往往显得不够直观。
本文将重点介绍 Linux Shell 中的常用终端快捷键。
常见的终端快捷键
以下是一些常用的终端快捷键,适用于 Linux Shell 和其他类 Unix 系统的终端(例如 macOS)。掌握这些快捷键可以显著提高命令行操作的效率,帮助你更加流畅地使用终端。
光标移动与定位
-
Ctrl + a / Home
将光标快速移动到命令行的开头。无论光标当前位于何处,按下此快捷键都能迅速将光标定位到命令的开头。 -
Ctrl + e / End
将光标快速移动到命令行的末尾。此操作对于快速定位命令结尾并进行修改非常实用。
清除与剪切
-
Ctrl + l
清除屏幕上的所有内容,相当于执行clear
命令。此操作仅清空当前显示区域,命令行中的内容保持不变,帮助保持屏幕整洁。 -
Ctrl + u
清除光标之前的所有字符,通常用于快速删除当前输入的内容。该快捷键会剪切光标之前的所有文本。 -
Ctrl + k
清除光标之后的所有字符,常用于删除不需要的命令部分。 -
Ctrl + y
粘贴最近剪切的内容,恢复被Ctrl + u
或Ctrl + k
剪切的文本。
操作控制与中断
-
Ctrl + c
终止当前正在运行的命令或进程。这是中止命令执行时最常用的快捷键。 -
Ctrl + o
执行当前命令并自动跳到下一行,适用于快速重复执行当前命令,尤其在命令格式固定时非常有用。 -
Ctrl + d
退出当前 Shell 会话,等同于执行logout
命令,通常用于结束当前终端会话。 -
Ctrl + z
将当前进程暂停并转入后台运行。此操作不会终止进程,而是让它在后台继续执行。需要注意的是,如果当前用户退出会话,后台进程可能会被终止。
交换与撤销
-
Ctrl + t
交换光标当前位置之前的字符与光标当前位置的字符。此快捷键可以快速修改输入内容,减少编辑步骤。 -
Alt + t
交换当前单词与前一个单词的位置,帮助你快速调整单词顺序。 -
Alt + d
删除光标之后的单词,并将其存入剪切板中。 -
Ctrl + w
删除光标之前的单词,常用于快速删除不需要的词。 -
Ctrl + u + x
按住Ctrl
键,依次按u
和x
,撤销上一次的命令或修改,修正错误输入时非常有用。
终端锁定与解锁
-
Ctrl + s
锁定终端,暂停输出流。按下此快捷键后,终端输出将暂停,直到按下Ctrl + q
解锁。 -
Ctrl + q
解锁终端,恢复输出流。在使用Ctrl + s
锁定终端后,使用此快捷键恢复正常操作。
自动补全与历史命令
-
Tab 键
自动补全。终端根据当前输入的内容自动补全命令、文件路径或参数,减少输入错误并提高效率。 -
Ctrl + r
在历史命令中查找。按下此组合键后,你可以输入搜索关键字,终端会展示历史命令中包含该关键字的命令,适合快速执行相似命令。 -
Ctrl + p
查看历史命令中的上一条命令。与箭头键(上键)类似,Ctrl + p
使查看历史命令更加便捷。 -
ESC + .
打印最近执行命令的最后一个参数部分,通常用于获取上一次命令中的参数。例如,执行了cat /etc/passwd
后,按下该快捷键会打印passwd
。 -
!!
重复执行上一条命令,适用于快速执行相同命令,无需重新输入。例如,使用sudo !!
可以直接为上一条命令添加sudo
权限。 -
history
显示命令历史。使用history
命令列出执行过的所有命令,帮助你回顾和查找之前的操作。 -
!$
执行历史命令中的最后一个参数。例如,若之前执行了cat /etc/sysconfig/network-scripts/ifconfig-eth0
,可以通过vim !$
直接编辑该文件。
结语
掌握终端快捷键是提升工作效率的一个关键步骤。通过本文介绍的常见快捷键,你可以更流畅、高效地使用终端,提高日常操作的便捷性。尽管不同操作系统之间存在一些差异,但大部分快捷键在 Linux 和 macOS 系统中是相似的,而 Windows 系统的体验则相对复杂。希望通过这篇笔记,你能更好地理解并应用这些快捷键,提升在终端中的操作熟练度。
相关文章:
终端快捷键学习笔记
以下是优化润色后的内容: 终端快捷键学习笔记 前言 终端(Terminal)是开发者、系统管理员以及技术人员常用的重要工具,它为我们提供了直接与操作系统交互的方式。不同操作系统中的终端使用体验存在差异,尤其在 Linux、…...
Go语言24小时极速学习教程(四)MySQL数据库的增删改查
通过前几篇想必你已经知道该如何使用Go语言写一些简单的程序了,那么从这一篇开始,我们开始探究如何用go语言能够写真正的企业级应用。第一步我们实现先能让程序对数据库进行增删改查,这里以MySQL为例。 1. 导入必要的包 首先需要导入databa…...

04 - Clickhouse-21.7.3.14-2单机版安装
目录 一、准备工作 1、确定防火墙处于关闭状态 2、CentOS 取消打开文件数限制 3、安装依赖 4、CentOS取消SELINUX 二、单机安装 2.1、下载安装 2.2、安装这4个rpm包 2.3、修改配置文件 2.4、启动服务 2.5、关闭开机自启 2.6、使用Client连接server 一、准备工作 1…...

多项式回归
以多元线性回归和特征工程的思想来想出一种称为多项式回归的新算法,它可以让您拟合曲线,非线性函数,您的数据。假设你有一个住房看起来像这样的数据集,其中特征x是以平方英尺为单位的大小。它看起来不像一条直线非常适合这个数据集…...

vscode报错:Connecting with SSH time-out.
当我们在vscode上远程连接(Remote_SSH)Linux时,如果直接点关闭vscode,下次远程登陆后,就会弹出以下界面, 点击重新加载window就会弹出以下报错: 这是因为我们没有正常关闭remote-ssh, 导致linux上有多个vsc…...

python可视化将多张图整合到一起(画布)
这周有点事忙着,没时间重温刚结束的Mathurcup数学建模,这两天也是再看了下,论文还是赶紧挺烂的,但比国赛又有进步(说起国赛又不得不抱怨了,基本其余省份都发了,但江西......哎)。哎&…...
C函数如何返回参数lua使用
返回基本数据类型 数字类型(整数和浮点数) 在C函数中,可以使用lua_pushnumber函数将一个数字(整数或浮点数)压入Lua栈。当C函数返回后,Lua会从栈顶获取这个数字作为返回值。例如,以下是一个简单…...
pytest在conftest.py中实现用例执行失败进行截图并附到allure测试报告
conftest.py文件简介 conftest.py文件用于定义共享设置、夹具和钩子函数。 可以跨.py文件调用,有多个.py文件调用时,可让conftest.py只调用了一次fixture,或调用多次fixture; conftest.py与运行的用例要在同一个pakage下…...

编程之路,从0开始:数据在内存中的存储
目录 1、整数在内存中的存储 (1)大小端 (2)数据存储读取练习 2、浮点数在内存中的存储 Hello大家好,很高兴我们又见面啦!给生活添点Passion,开始今天的编程之路! 1、整数在内存中的存储 之…...

二叉树+树的OJ题讲解
求第K层节点个数 思路:走到K1就不走了,一次传回得到的值 #include<stdio.h> #include<stdlib.h> //树的定义 typedef int BTDataType; typedef struct BinaryTreeNode {BTDataType data;struct BinaryTreeNode* left;struct BinaryTreeNode* right; }BTNode;//手…...

信捷PLC转以太网连接电脑方法
信捷XC/XD/XL等系列PLC如何上下载程序?可以选择用捷米特JM-ETH-XJ模块轻松搞定,并不需要编程,即插即用,具体看见以下介绍: 产品介绍 捷米特JM-ETH-XJ是专门为信捷PLC转以太网通讯面设计,可实现工厂设备信息化需求,对…...

释放 PWA 的力量:2024 年的现代Web应用|React + TypeScript 示例
在2024年的Web开发领域,PWA(Progressive Web Apps)已经成为一个不可忽视的技术趋势。这篇文章将探讨PWA的最新发展,并通过实例展示如何构建一个现代PWA应用。 PWA的本质与优势 PWA本质上是一种将Web应用提升到接近原生应用体验的技…...
CVSS4与CVSS3的不同之二
在文章CVSS4与CVSS3的不同-CSDN博客中描述了CVSS3的缺点,以及CVSS4相对CVSS3做了哪些改进和带来了哪些优点。 但是具体CVSS4针对CVSS3做了哪些改动,还没有详细列举出来。 本文主要是针对CVSS4和CVSS的打分的大项和小项进行逐一对比,列出来具体…...
【Pip】如何清理 `pip` 包管理器 —— 完整指南
目录 引言1. 清理 pip 缓存2. 卸载不再需要的包2.1 如何查看已安装的包2.2 如何卸载不需要的包 3. 查看已安装的包及其依赖3.1 查看单个包的依赖3.2 查看所有包的依赖关系3.2 优化包依赖 4. 解决包冲突5. 合并和优化依赖5.1 优化 requirements.txt5.2 删除冗余依赖 6. pip 清理…...
操作数据库
""" 本文件是【连接数据库:通过链和代理查询鲜花信息】章节的配套代码,课程链接:https://juejin.cn/book/7387702347436130304/section/7388065974408183858 您可以点击最上方的“运行“按钮,直接运行该文件&…...
lua-lru缓存算法解析
lua-lru缓存算法解析 主要功能和作用1. 缓存管理:2. 数据存储与访问:3. 迭代器:4. 容量管理: 具体实现细节使用场景使用示例 lua-lru 是 Lua 语言中的一个 LRU(Least Recently Used,最近最少使用࿰…...

Python - 初识Python;Python解释器下载安装;Python IDE(一)
一、初识Python Python 是一种高级编程语言,Python是一种面向对象的解释型计算机程序设计语言,Python由荷兰国家数学与计算机科学研究中心的吉多范罗苏姆()Guido van Rossum吉多范罗苏姆()于1989 年底发明…...
鸿蒙学习基本概念
文章目录 1、当前移动应用开发中遇到的主要挑战包括:2、 新的应用生态应该具备如下特征:3、HarmonyOS 应用:使用 HarmonyOS SDK 开发的应用程序,能够在华为终端设备4、HarmonyOS 元服务:元服务是 HarmonyOS 面向万物互…...

正则表达式(补充)
定义一个正则表达式 const 变量名 /表达式/ const reg /前端/ 匹配看字符串中有无前端俩字 正则对象上的一些方法 test() 用于查看正则表达式与指定的字符串是否匹配 const reg /前端/ const res reg.test(学前端,找黑马) //匹配到返回true,匹配不到返回fa…...

第23课-C++-红黑树的插入与旋转
🌇前言 红黑树是一种自平衡的二叉搜索树,因其出色的性能,广泛应用于实际中。Linux 内核中的 CFS 调度器便是一个使用红黑树的例子,这足以说明它的重要性。红黑树的实现通过红黑两种颜色的控制来维持平衡,并在必要时使…...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...

大话软工笔记—需求分析概述
需求分析,就是要对需求调研收集到的资料信息逐个地进行拆分、研究,从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要,后续设计的依据主要来自于需求分析的成果,包括: 项目的目的…...

Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
STM32+rt-thread判断是否联网
一、根据NETDEV_FLAG_INTERNET_UP位判断 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…...

dedecms 织梦自定义表单留言增加ajax验证码功能
增加ajax功能模块,用户不点击提交按钮,只要输入框失去焦点,就会提前提示验证码是否正确。 一,模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...

华为OD机试-食堂供餐-二分法
import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...

使用LangGraph和LangSmith构建多智能体人工智能系统
现在,通过组合几个较小的子智能体来创建一个强大的人工智能智能体正成为一种趋势。但这也带来了一些挑战,比如减少幻觉、管理对话流程、在测试期间留意智能体的工作方式、允许人工介入以及评估其性能。你需要进行大量的反复试验。 在这篇博客〔原作者&a…...

stm32wle5 lpuart DMA数据不接收
配置波特率9600时,需要使用外部低速晶振...
ThreadLocal 源码
ThreadLocal 源码 此类提供线程局部变量。这些变量不同于它们的普通对应物,因为每个访问一个线程局部变量的线程(通过其 get 或 set 方法)都有自己独立初始化的变量副本。ThreadLocal 实例通常是类中的私有静态字段,这些类希望将…...
CppCon 2015 学习:Reactive Stream Processing in Industrial IoT using DDS and Rx
“Reactive Stream Processing in Industrial IoT using DDS and Rx” 是指在工业物联网(IIoT)场景中,结合 DDS(Data Distribution Service) 和 Rx(Reactive Extensions) 技术,实现 …...