目录
一、linux初识
1.1 什么是linux系统?
Linux系统是一种开源的类Unix操作系统,最初由芬兰计算机科学家Linus Torvalds在1991年创建。Linux系统基于Unix操作系统的设计理念和技术,但是在内核和许多组件上完全重新实现,并以GNU通用公共许可证发布。Linux系统具有多样化、灵活性和可定制性等特点,因此被广泛用于服务器、个人电脑、移动设备、嵌入式系统等各种场景。Linux系统有许多不同的发行版,如Ubuntu、Debian、Fedora、CentOS等,每个发行版都有其特定的特点和目标用户群
1.2 linux系统有什么优势?
1.开源性 2.稳定性 3.可靠性 4.完善的网络功能 5.丰富的软件生态系统 6.多用户和多任务支持
二、shell
2.1 Shell的定义和位置 :
Shell是一种命令行解释器,是用户与操作系统内核之间的接口和工具。它接收用户输入的命令,并将这些命令解释成计算机可以执行的指令,然后传递给内核执行。
2.2 Shell的作用:
Shell接收用户在命令行中输入的命令,并将其解释成计算机可以执行的指令,然后传递给内核执行。它负责解释和执行用户输入的各种操作,如启动程序、管理文件等。
三、linux命令分类
3.1内部命令
内部命令是直接由Shell解释器处理的命令,而不是通过调用外部程序来执行的。这些内部命令通常是Shell解释器自身的一部分,因此执行速度更快,没有独立的系统文件;会随着shell自动加载到内存,可以直接使用
3.2外部命令
外部命令是由一个二进制程序文件或脚本文件组成,不属于Shell解释器的一部分。每个外部命令都对应着一个系统文件,该文件包含了命令的实现代码。要在Shell中使用外部命令,需要让Shell知道这些命令文件的位置,以便能够自动加载并执行它们。通常,可以通过将外部命令文件放置到系统的PATH环境变量指定的目录中来实现。
*两者中间还有一个(hash表),Shell会将已经查找过的命令路径缓存到hash表中。这个表主要用于缓存外部命令的路径,以提高命令的查找速度。
查看是内部还是外部命令:type
↑比如说type help 显示是shell内嵌那就说明help是内部命令
↑type vi 显示/usr/bin/vi 有独立的文件说明是外部命令
内部命令 | 外部命令 |
集成于Shell解释器程序内部 的一些特殊指令,也称为内建(Built-in)指令 | Linux系统中能够完成 特定功能的脚本文件 或二进制程序 |
属于shell的一部分 | 属于Shell解释器程序 之外的命令 |
没有单独对应的系统文件 | 每个外部命令对应了 系统中的一个文件 |
自动载入内存,可以直接使用 | 必须知道其对应的文件位置,由shell加载后才能执行 |
3.3命令的执行过程
内部命令的执行过程
↓
1.解析命令
Shell中输入命令时,首先会解析这些命令,解析过程涉及到识别命令的名称、选项和参数
↓
2.判断命令属于内部还是外部命令
Shell会判断用户输入的命令是内部命令还是外部命令。如果是内部命令,Shell会直接在bash执行该命令,如果是外部命令,则需要在系统中找到相应的可执行文件
(如果找不到命令,则会报错)
外部命令的执行
↓
1.解析命令
Shell中输入命令时,首先会解析这些命令,解析过程涉及到识别命令的名称、选项和参数
↓
2.判断命令属于内部还是外部命令
Shell会判断用户输入的命令是内部命令还是外部命令。如果是内部命令,Shell会直接在bash执行
如果是外部命令则在hash表中查找,找不到的话则会去路径查找,路径再找不到则会报错。
四、linux的快捷键
(1)快捷键↓
Ctrl+A | 将光标移动到命令行的开始位置 |
Ctrl+E | 将光标移动到命令行的结束位置 |
Ctrl + K | 删除光标后的所有文本 |
ALT+D | 从当前光标删除末尾 |
Ctrl + U | 删除光标前的所有文本 |
Ctrl+W | 从当前光标删除到开头 |
Ctrl+l | 清除屏幕内容 |
Ctrl+c | 中断当前正在执行的命令 |
Ctrl+s | 锁定屏幕 |
Ctrl+q | 解除锁定 |
TAB | 自动补齐 |