bash的基本特性
1、命令历史
作用:查看之前使用的命令
关于命令历史的文件
每个用户家目录下面的.bash_history
在关机的时候,会自动写入一次(history -r 将内存中的命令存入文件)
关于命令历史的变量(环境变量)
env //查看环境变量
set //查看更详细的环境变量参数
HISTSIZE=1000 总量数量=1000
HISTCONTROL=ignoredups
ignore:忽略
查看命令历史
!# #表示数值,执行#行的命令
!string 匹配最近一次的字符串
!!上一条命令
!$ 上一条命令的最后的一个参数(很重要)
例如: ls /etc
ls !$ 取出的是 /etc
常见的选项:
-a
-d
-c
history # 显示最近#行的命令
history的常见操作
2、命令补全
tab
1、提示 2、补全
扩展:制表符 \t四个空格键
3、目录补全
tab
1、提示 2、补全
4、命令展开--date命令
{}
Linux的目录需要遵循什么规则? --FHS目录规则
属性1 属性2
a 1
b 2
mkdir -pv /var/{a,b}-{1,2}
date 基于date命令来创建目录
%T hh:MM:ss
%F CCYY-mm-dd(年月日)
%D mm/dd/yy
%H hh(小时)
%M MM(分钟)
%S ss(秒)
%Y CCYY
练习:通过for语句循环创建一个月的日志文件;.log 2019-08-6.http.log (at crontab(周期性执行脚本的命令))(shell的1到30{1..30})
touch 'date + %F’.http.log
tar
压缩工具
(压缩 只能对文件压缩,不能对目录压缩)
gzip
bzip2
xz
tar的常见的参数:
tar 归档工具(可以对目录进行操作)
-j bzip2
-J xz
-z gzip
-c create(压缩)//必须指定压缩工具
-x extract(解压)//可以不用指定解压的工具
-f 指定文件名
-v 显示详细信息verbose
-t 不解压查看内容和zcat一样
红色是压缩文件 绿色是执行文件 蓝色是目录文件
压缩
解压
tar xvf 解压文件名 -C abc 解压到指定文件夹
chmod +x xxx.bash
clock /hwclock 常看硬件时钟(如果同步系统时钟与硬件时钟)
5、命令的执行状态
在Linux中,每一条命令执行都会有两个结果:
命令本身放回的内容
其次,命令执行的结果状态
[$? -eq 0] && exit0 || exit 1
6、命令的快捷键
ctrl +l
ctrl +C
ctrl +u ///删除光标签的字符
ctrl +k ///删除光标后的文件
ctrl +a
ctrl +e
ctrl +w ///以空格为分隔符,去删除文件
ctrl +r ///进入一个交互界面,搜索最近一次使用的命令(要输入string)
7、alias别名
系统启动时读取一些特殊文件的顺序;
//这种方式定义alias只能在当前shell生效
alias
/etc/profile(定义环境变量,所有用户) EXPORT HISTCONTROL=XXX
/etc/bashrc (上面两个写的全都可以用)(定义本地变量)(所有用户)
~/.bash_profile (下面两个写的只能自己用)(定义环境变量,指定用户)
~/.bashrc(定义本地变量,指定用户)
sources /etc/profile 或者 . /etc/profile(环境变量需要写)
8、文件通配符’
(文件通配符不是正则表达式)
? 任意单个字符
* 任意长度的任意字符
[] 指定范围内的任意一个字符
2、[^]指定范围以外的任意一个字符
[^0-9A-Za-z] [0-9] [a-z] [A-Z] [a-zA-Z]
指定字符类
第一个:匹配任意数字和字母
有空格键的空白(正则表达式)
练习: