操作系统
|
IP地址
|
主机名
|
软件包
|
备注
|
CentOS7.5
|
192.168.200.111
|
localhost
|
- 是Linux系统中运行的一种特殊程序(软件)
- 位于用户和Linux内核之间充当解释器(翻译官)
- 用户在登录Linux系统时,会被分配到一个Shell程序
- Bash是Linux系统中默认使用的Shell程序(文件位于/bin/bash)
- Shell负责接收用户输入的操作命令、解释、提交给内核执行
[root@localhost ~]# echo $SHELL #查看用户的shell程序
/bin/bash
[root@localhost ~]# cat /etc/shells #查看操作系统支持的所有shell程序
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh
/bin/csh
内部命令
|
外部命令
|
集成于 Shell 解释器程序内部的一些特殊指令,也称为内建(Built-in)指令
|
Linux系统中能够完成特定功能的脚本文件或二进制程序文件
|
属于 Shell 内的一部分
|
属于 Shell 解释器程序之外的程序文件
|
没有单独对应的系统文件
|
每个外部命令对应了系统中的一个程序文件和多个库文件
|
shell运行时内部命令自动载入内存,可以直接使用
|
必须知道其对应的程序文件位置,由 Shell 加载后才能执行
|
- 命令字
- 选项
- 没有被括号括起来的表示必选的,例如:命令字
- [] 括起来的表示可有可无
- {a|b|c} 表示abc中必须也只能选一个
- ... 表示前面的部分可以出现多个
- Tab 键:自动补齐或者列出符合开头的命令
- 反斜杠"\":强制换行和转义
- 快捷键 Ctrl+u:从光标处清空至行首
- 快捷键 Ctrl+k:从光标处清空至行尾
- 快捷键 Ctrl+Y:黏贴刚才所删除(剪切)的字符
- 快捷键 Ctrl+a:快速跳转至行首
- 快捷键 Ctrl+e:快速跳转至行尾
- 快捷键 Ctrl+l:清屏等同于clear命令
- 快捷键 Ctrl+c:取消本次命令编辑
- 快捷键 Ctrl+r:搜索历史命令
- 快捷键 Ctrl+D:从shell提示中注销关闭,类似输入exit
- 快捷键 Ctrl+Z:转入后台运行
- 快捷键 Ctrl+R:在历史命令中查找(常用并且很好用)
[root@localhost ~]# type cd
cd is a shell builtin 内部命令
[root@localhost ~]# type mkdir
mkdir is /usr/bin/mkdir 外部命令
- -l:以长格式(Long)显示文件和目录的列表
- -a:显示所有(All)子目录和文件的信息
- -A:与-a选项的作用基本类似,但有两个特殊隐藏目录不会显示,“.”和“..”
- -d:显示目录(Directory)本身的属性,而不是显示目录中的内容
- -h:以更人性化(Human)的方式显示出目录或文件的大小,此选项需要结合-l选项一起使用
- -R:以递归(Recursive)的方式显示指定目录及其子目录中的所有内容
- --color=auto 使用色彩来区分文件类型的功能
[root@localhost ~]# ls
anaconda-ks.cfg epel-release-latest-7.noarch.rpm initial-setup-ks.cfg 公共 模板 视频 图片 文档 下载 音乐 桌面
[root@localhost ~]# ls -l
总用量 24
-rw-------. 1 root root 1847 5月 24 2018 anaconda-ks.cfg
-rw-r--r--. 1 root root 15080 10月 3 2017 epel-release-latest-7.noarch.rpm
-rw-r--r--. 1 root root 1904 5月 25 2018 initial-setup-ks.cfg
drwxr-xr-x. 2 root root 6 5月 25 2018 公共
drwxr-xr-x. 2 root root 6 5月 25 2018 模板
drwxr-xr-x. 2 root root 6 5月 25 2018 视频
drwxr-xr-x. 2 root root 6 5月 25 2018 图片
drwxr-xr-x. 2 root root 6 5月 25 2018 文档
drwxr-xr-x. 2 root root 6 5月 25 2018 下载
drwxr-xr-x. 2 root root 6 5月 25 2018 音乐
drwxr-xr-x. 2 root root 6 5月 25 2018 桌面
[root@localhost ~]# ls /boot/
config-3.10.0-862.el7.x86_64 grub2 symvers-3.10.0-862.el7.x86_64.gz vmlinuz-3.10.0-862.el7.x86_64
efi initramfs-0-rescue-78f0a89850f04bd595a5a80c50d5d223.img System.map-3.10.0-862.el7.x86_64
grub initramfs-3.10.0-862.el7.x86_64.img vmlinuz-0-rescue-78f0a89850f04bd595a5a80c50d5d223
- -a:统计磁盘空间占用时包括所有的文件,而不仅仅只统计目录
- -h:以更人性化的方式(默认以KB计数,但不显示单位)显示出统计结果
- -s:只统计所占用空间总的(Summary)大小,而不是统计每个子目录、文件的大小
- -a 只更改访问时间
- -c, --no-create 不创建任何文件
- -d, --date=字符串 使用指定字符串表示时间而非当前时间
- -m 只更改修改时间
[root@localhost ~]# ls -l anaconda-ks.cfg
-rw-------. 1 root root 1847 5月 24 2018 anaconda-ks.cfg
[root@localhost ~]# touch anaconda-ks.cfg
[root@localhost ~]# ls -l anaconda-ks.cfg
-rw-------. 1 root root 1847 12月 12 14:03 anaconda-ks.cfg
[root@localhost ~]# touch test.txt
[root@localhost ~]# ls -l test.txt
-rw-r--r-- 1 root root 0 12月 12 14:04 test.txt
[root@localhost ~]# date
2018年 12月 12日 星期三 14:37:46 CST
[root@localhost ~]# date -s "2018-12-12 15:00:00"
2018年 12月 12日 星期三 15:00:00 CST
[root@localhost ~]# date
2018年 12月 12日 星期三 15:00:00 CST
- -p 嵌套创建多层目录
- -v 显示详细
- -m 跳出当前的umask值
[root@localhost ~]# ls ./
anaconda-ks.cfg epel-release-latest-7.noarch.rpm initial-setup-ks.cfg test.txt 公共 模板 视频 图片 文档 下载 音乐 桌面
[root@localhost ~]# mkdir aa bb cc
[root@localhost ~]# ls
aa anaconda-ks.cfg bb cc epel-release-latest-7.noarch.rpm initial-setup-ks.cfg test.txt 公共 模板 视频 图片 文档 下载 音乐 桌面
[root@localhost ~]# mkdir 11/22/33 -p
[root@localhost ~]# ls -R 11
11:
22
11/22:
33
11/22/33:
- -f 覆盖目标同名文件或目录时不进行提醒,直接强制复制
- -i 覆盖目标同名文件或目录时提醒用户确认
- -r 复制目录时必须使用此选项,表示递归复制所有文件及子目录
- -p 复制时保持源文件的权限、属主及时间标记等属性不变
- -f 删除文件或目录时不进行提醒,直接强制删除(非常危险的选项)
- -i 删除文件或目录时提醒用户确认
- -r 删除目录时必须使用此选项,表示递归删除所有文件及子目录
- -f, --force 覆盖前不询问
- -i, --interactive 覆盖前询问
- -n, --no-clobber 不覆盖已存在文件
- -a 查询是遍历PATH值中的所有目录
- -name 根据目标文件的名称进行查找,允许使用“*”及“?”通配符
- -size 根据目标文件的大小进行查找、 一般使用“+”、“-”号设置超过或小于指定的大小作为查找条件、常用的容量单位包括 kB(注意 k 是小写)、MB、GB
- -type 根据文件是否属于目标用户进行查找
- -user 根据文件的类型进行查找、文件类型包括普通文件(f)、目录(d)、块设备文件(b)、字符设备文件(c)链接文件(l)、管道文件(p)、套接字文件(s:socket)等、块设备是指成块读取数据的设备(如硬盘、内存等),字符设备是指按单个字符读取数据的设备(如键盘、鼠标等)
- 各表达式之间使用逻辑运算符 “-a”表示 而且(and) “-o”表示 或者(or)