#1、命令历史
作用:查之前使用的命令
关于命令历史的文件
每个用户家目录下面的.bash_history在关机的时候,会自动写入一次(history -r 将内存 中的命令历史写入文件)
关于命令的历史变量(环境变量)
env //查看环境变量
set //常看更详细的环境变量参数
HISTSIZE = 1000 数量
HISTCONTROL = ignoredups 忽略重复的命令
history的常见操作
查看命令历史
!# #表示数值,执行#行的命令
!string 匹配最近一次的字符串
!! 上一条命令
*!$* 上一条命令的最后的一个参数
ls /etc
ls !$
Esc+.
常见的选项:
-a
-d
-c
history # 最近#行的命令
#2、命令补全
tab
1.提示 2.自动补全
扩展:制表符 \t 四个空格
#3、目录补全
tab
1.提示 2.自动补全
#4、命令展开--data命令
{}
Linux的目录需要遵循什么规则?- -FHS目录规则
属性1 属性2 a 1 b 2
mkdir -pv /var/{a,b}-{1,2}
date 基于date命令来创建目录
date +%F-%H:%M:%S 2019-08-06-22:29:08
%F CCYY-MM-dd
%T hh:MM:ss
%D mm/dd/YY
%H hh
%M MM
%S ss
%Y CCYY
tar
压缩工具
gzip
bzip
xz
zcat //查看压缩文件且不解压
【压缩 只能对文件进行压缩,而不能对目录进行操作】
tar的常见参数:
tar归档工具【可以对目录进行操作】
-j bzip2
-J xz
-z gzip
-c create
-x extract //可以不用知道解压的工具
-f 指定文件名
-v 显示详细信息
-t 不解压查看内容 和 zcat 一样
# 练习:编写脚本,每天02:20备份/etc/目录中所有文件,名称为当天日期;且保存文件为压缩文件
crontab -- 20 2 * * * /root/xxx.sh vim xxx.sh #!/bin/bash # tar cJvf /var/`date +%F`.xz /etc/ chmod +x xxx.sh 补存: clock / hwclock 查看硬件始终(如果同步系统时钟与硬件时钟) cal 日历
#5、命令的执行状态
在Linux中,每一条命令执行后都会有俩个结果:1)命令本身放回的内容
2)其次,命令执行的结果状态
$? 变量,就是用来存放命令执行状态的变量:0 表示成功状态(与Python正好相反)
1~255 表示失败状态
#6、命令的快捷键
ctrl + l ctrl + c ctrl + u //删除光标前的字符 ctrl + k //删除光标后的字符 ctrl + a ctrl + e ctrl + w //以空格为分隔符,去删除文件 ctrl + r //进入一个交互界面,搜索最近一次使用的命令(要输入string)
#7、alias别名
系统启动时读取一些特殊文件的顺序;
alias cdnet="cd /etc/sysconfig/network-scripts" //这种方式定义alias只能在当前shell生效;
/etc/profile : 定义环境变量(所有用户)
/etc/bashrc :定义本地变量-- alias(所有用户)
~/.bash_profile:定义环境变量(指定用户)
~/.bashrc:定义本地变量--alias(指定用户)
sources /etc/profile 或者 . /etc/profile 生效修改内容
#8、文件通配符--globbing
【文件通配符不是正则表达式】
? 任意单个字符
* 任意长度的任意字符
[] 指定范围内的任意一个字符
[0-9A-Za-z]
[0-9][a-z][A-Z][a-zA-Z]
指定字符类:
[:alnum:] 匹配任意一个字母或数字
[:alpha:] 匹配任意一个字母
[:digit:] 匹配任意一个数字
[:lower:] 匹配任意一个小写字母
[:upper:] 匹配任意一个大写字母
一般常用的匹配:
模式 匹配对象 * 所有文件 p* 文件名以“p”开头的文件 r*.txt 以”r” 开头,中间有零个或任意多个字符,并以”.txt” 结尾的文件 Data??? 以“Data”开头,其后紧接着 3 个字符的文件 [abc]* 文件名以”a”,”b”, 或”c” 开头的文件 BACKUP.[0-9][0-9][0-9] 以”BACKUP.” 开头,并紧接着 3 个数字的文件 [[:upper:]]* 以大写字母开头的文件 [![:digit:]]* 不以数字开头的文件 *[[:lower:]123] 文件名以小写字母结尾,或以“1”,“2”,或“3”结尾的文件