Linux常用命令详解及使用演示
1.Linux命令概述
1.1 Linux命令的分类
Bash是Linux操作系统中默认使用的shell程序,文件位于/bin/bash。根据Linux命令与shell程序的关系,Linux命令一般分为以下两种类型。
内部命令:
- 集成于 Shell 解释器程序内部的一些特殊指令,也称为内建(Built-in)指令
- 属于Shell 的一部分
- 没有单独对应的系统文件
- 自动载入内存,可以直接使用
外部命令:
- Linux系统中能够完成特定功能的脚本文件或二进制程序
- 属于 Shell 解释器程序之外的命令
- 每个外部命令对应了系统中的一个文件
- 必须知道其对应的文件位置,由 Shell 加载后才能执行
1.2 Linux命令的格式
通用的命令行使用格式
命令字 [选项] [参数]
命令字
是整条命令中最关键的一部分
唯一确定一条命令
注意:Linux命令环境中,对英文字符的处理是区分大小写的
选项
短格式选项:使用“-”符号引导多个单字符选项可以组合在一起使用
说明:结构简单、输入快捷
长格式选项:使用“--”符号引导
说明:意义明确,容易记忆
参数
- 命令字的处理对象
- 可以是文件名、目录(路径)名或用户名等内容
- 个数可以是零到多个
2. 编辑 Linux 命令行的辅助操作
Tab 键:补全
反斜杠“\”:换行,输入的命令太长时可以使用
Ctrl+U 快捷键:删除当前光标之前的内容
Ctrl+K 快捷键:删除当前光标之后的内容
Ctrl+L 快捷键:清屏,快速清空当前屏幕的显示内容
Ctrl+C 快捷键:中断,取消当前命令行的编辑
演示
Tab补全演示
Ctrl+U和Ctrl+K组合键演示
Ctrl+L和Ctrl+C组合键演示
3. 获得命令帮助的方法
使用help 命令
如果是一个内部命令,可以使用“help 命令”来获取命令的帮助信息。
那么怎么才能判断一个命令是内部命令还是外部命令呢???
使用“type 命令”可以判断一个命令是内部命令还是外部命令
使用“--help”选项
如果是一个外部命令,可以使用 “命令 --help”来获取命令的帮助信息。
使用man 手册页
使用“man 命令”可以获取任何命令的帮助信息
演示
4.目录和文件基本操作
4.1查看及切换目录
(1)pwd命令:查看当前的工作目录(Print Working Directory)
(2)cd命令:切换工作目录(Change Directory)
cd ~ |
切换到宿主目录 |
cd |
|
cd - |
切换到上次目录 |
cd .. |
切换到上一级目录 |
(3)ls命令:列表(list)显示目录内容
-l:显示详细信息
-a:显示所有目录和文件信息,包括一点号“.”开头的隐藏目录和文件
-A:与-a相似,但两个隐藏目录不会显示,即当前目录的“.”和表示父目录的“..”。
-d:显示目录的本身属性,而不显示目录的内容
-h:显示目录和文件的大小
-R:递归的方式显示指定目录及子目录中的所有内容
--color:深蓝色:目录;白色:一般文件;绿色:可执行文件;黄色:设备文件;红色:压缩文件。
提示:通过别名机制简化常用的、比较长的命令
alias 命令别名 = 命令
如:设置myls 为ls – alh的别名
alias myls = ‘ls – alh’
(4)du命令:统计目录及文件的空间占用情况
-a:统计所有文件
-h:显示单位大小
-s:只统计每个参数所占总空间的大小
4.2创建目录和文件
(1)mkdir命令:创建新的目录(Make Directory)
-p:用于创建多层目录
(2)touch命令:创建空文件
提示:大多数情况下,我们使用“vim 文件名”的方式创建新文件,这样便于编辑,而touch只是创建了一个空文件。
(3)ln命令:
|
软连接(-s) |
硬链接 |
删除原始文件后 |
失效 |
仍旧可用 |
使用范围 |
适用于文件或目录 |
只可用于文件 |
保存位置 |
与原始文件可以位于不同的文件系统中 |
必须与原始文件在同一个文件系统(如一个Linux分区)内 |
4.3复制、删除、移动
(1)cp命令:复制(Copy)文件或目录
-f |
覆盖目标同名文件或目录时不进行提醒,直接强制复制 |
-i |
覆盖目标同名文件或目录时提醒用户确认 |
-p |
复制时保持源文件的权限、属主及时间标记等属性不变 |
-r |
复制目录时必须使用此选项,表示递归复制所有文件及子目录 |
注意:复制多个文件或目录时,目标位置必须是目录,且目标目录必须已存在
(2)rm命令:删除(Remove)文件或目录
-f:删除时不提示
-i:删除时提示
-r:删除目录时必须使用,表示递归删除整个目录
(3)mv命令:移动(Move)文件或目录
提示:
- 需要移动多个文件或目录时,目标位置必须目录,而且目标目录必须已存在。
- 如果目标位置与源位置相同,则相当于执行重命名操作
4.4查找目录和文件
(1)which命令:查找用户所执行的命令文件存放的目录
搜索范围由环境变量 PATH 决定(echo $PATH)
echo $PATH:显示当前PATH环境变量,该变量的值由一系列以冒号分隔的目录名组成
(2)find命令:查找文件或目录
采用递归方式,根据目标的名称、类型、大小等不同属性进行精细查找
常用查找条件类型
查找类型 |
关键字 |
说明 |
按名称查找 |
-name |
根据目标文件的名称进行查找,允许使用“*”及“?”通配符,*代替0个或多个字符,?代替一个字符 |
按文件大小查找 |
-size |
根据目标文件的大小进行查找 |
按文件属主查找 |
-user |
根据文件是否属于目标用户进行查找 |
按文件类型查找 |
-type |
根据文件的类型进行查找 |
使用 find 命令实现多个查找条件
各表达式之间使用逻辑运算符
- “-a”表示 而且(and)
- “-o”表示 或者(or)
说明:上面例子中,第一个使用了参数-a,要求-a两边的查找条件必须同时满足,简单解释一下这条命令的意思:查找/boot目录下文件大小超过1024k,并且文件名是以“vmlinuz”开头的文件;第二使用了参数-o,要求-o两边的查找条件满足其中任意一个即可,这条命令的意思是:查找/boot目录下文件大小超过1024k,或者是以“vmlinuz”开头的文件。