Shell
shell是一个应用程序,它连接了用户和Linux内核,让用户能够更加安全、高效、低成本的使用Linux内核,这就是shell的本质
用户登录Linux系统时会自动加载一个shell,bash为默认的shell,文件位于/bin/bash
shell接收用户输入的命令并对命令进行处理,处理完毕后再将结果呈现给用户,shell在用户和内核之间就相当于一个“翻译官”。
Linux命令的分类
内部命令
内部命令实际上就是shell程序的一部分,由shell软件内部进行实现的命令,这些命令由shell程序识别并在shell程序内部完成运行,内部命令嵌入在shell程序内,没有单独对应的系统文件,自动载入内存可以直接使用。
外部命令
外部命令是Linux系统中的实用程序部分,是一个独立的外部可执行程序,Linux系统中能够完成特定功能的脚本文件或二进制程序,属于shell解释器之外的命令,每一个外部命令对应了一个系统文件,必须知道其对应的文件位置,由shell加载后才能执行/bin,/usr/bin,/usr/local/bin等
查看内部命令
enable help type <命令字>
enable -n <命令字> #禁用内部命令
enable <命令字> #启用内部命令
命令行格式
命令字→操作
[选项]→功能 短格式:-<单字符> -a -l -h #多个短格式可以组合在一起使用 -alh
长格式:--<单词> --help
[参数]→执行的对象
编辑Linux命令行的辅助操作
Tab键 | 自动补齐 |
反斜杠“/” | 强制换行 |
Ctrl+u组合键 | 清空至行首 |
Ctrl+k组合键 | 清空至行尾 |
Ctrl+L组合键 | 清屏 |
Ctrl+c组合键 | 取消本次命令编辑 |
Ctrl+a组合键 | 切换到行首 |
Ctrl+e组合键 | 切换到行尾 |
获得命令帮助的方法
1.通过help命令(查看shell内部命令的帮助信息)
2.命令的“--help”选项(适用于大多数Linux外部命令)
3.man命令查询手册
通配符
符号 | 作用 |
* | 表示任意长度的任意字符 |
? | 表示任意一个字符 |
[1...10] | 表示1~10中的任意一个字符 |
du的用法及作用
du(disk usage):统计文件/目录占用磁盘的空间大小
选项 | 作用 |
-a | 统计目录及其所有子目录和文件的占用大小 |
-s | 仅统计目录本身的占用大小,不能和-a选项同时使用 |
-h | 以人性化的方式显示占用大小 (默认大小为kb) |
-d1=--max-depth=1 | 仅统计目录中的第一层子目录的占用大小 |
alias
创建别名命令:‘命令字 [选项] [参数]’
取消命令别名:unalias 别名命令
显示所有的别名命令:alias
ls的用法及其作用
ls:以列表形式显示文件本身或目录中的内容
选项 | 作用 |
-l | 以长格式的形式显示文件/子目录属性 |
-a/-A | 显示目录中所有的隐藏文件,-A不显示.和.. |
-h | 以人性化的方式显示文件/子目录大小(默认单位为字节) |
-d | 查看目录本身 |
-R | 以递归的方式显示目录中所有子目录的内容 |
-t | 以时间排序显示,默认从最新到最老的方式 |
-r | 反向排序 |
-i | 显示文件/目录的inode号 |
cp的用法及作用
1.复制一个源文件到目标文件
命令格式为:cp 源文件 目标文件
2.同时复制多个文件到目标文件
命令格式为:cp 源文件1 源文件2 目标文件夹
注意:当复制多个文件或目录时,目标路径必须是已存在的目录