一.基础shell
1.echo输出命令
语法:echo [选项] [输出内容]
选项: -e:支持反斜线控制的字符转换
\\:输出\本身
\b:退格键
\n:换行符
\t:制表符
\v:垂直制表符
2.脚本执行
chmod 755 hello.sh赋予执行权限,直接运行
./hello.sh
通过bash调用执行文件
bash helle.sh
脚本文件转换:win转unix:dos2unix [文件名]
unix转win:unix2dos
3.历史命令
语法:history [选项] [历史保存文件]
历史命令默认会保存1000条,可以在环境变量配置文件/etc/profile中进行修改
选项:
-c:清空历史命令
-w:把缓存中的历史命令保存文件【~/.bash_history】
4.别名
alias 自定义名称 = 命令
永久生效:/root/.bashrc
unalias:删除别名
5.多命令顺序执行
; :多个命令执行,没有逻辑关系
&&:当命令1正确执行,则命令2才执行,命令1执行错误,2则不执行
||:当命令1执行不正确,则命令2才执行,执行正确,命令2不执行
格式:命令1&&命令2
6.本地变量
变量定义:name=“love 233”
变量叠加:aa=123
aa=“$aa”456
aa=${aa}789
变量调用:echo $name
变量查看:set
变量删除:unset name
7.环境变量
申明变量:export 变量名=变量值
查询变量:env
删除变量:unset 变量名
8.位置参数变量
9.预定义变量
10.键盘输入
语法:read 【选项】 【变量名】
选项:
-p“提示信息”:在等待read输入时,输出提示信息
-t 秒数:read命令等待用户的指定时间
-n 字符数:read命令只接受指定的字符数,在到达指定字节自动下一步
-s:隐藏输入的数据
11.变量类型
1.declare 声明变量类型
语法:declare [+/-] [选项] 变量名
选项:
-:给变量设定类型属性
+:取消变量的类型属性
-i:将变量声明为整数型
-x:将变量声明为环境变量
-p:显示指定变量的被声明的类型
2.expr或let数值运算工具
格式:变量名=$(expr $aa + $bb) #运算符两侧加空格
3. $((运算符)) 或 $[运算符]
12.变量测试与内容替换
13.配置文件
source命令 让配置文件直接生效
语法:source 配置文件
或: .配置文件
14.配置文件
2.登录后欢迎信息:/etc/motd
不管是本地,还是远程登录,都可以显示此欢迎信息
二.正则表达式
字符截取命令-cut
格式:cut [选项] 文件名
选项:
-f列号:提取第几列
-d分割符:按照指定分割符分割列
2. 字符截取命令-printf命令
格式:printf ‘输出类型输出格式’ 输出内容
输出类型:
%ns:输出字符串,n是数字指定输出第一个字符
%ni:输出整数
%m.nf:输出浮点型,m和n是数字,指代输出的整数位数和小数位数。
3.截取命令-awk命令:
格式:awk ‘条件1{动作1} 条件2{动作2}’ 文件名
条件:一般使用关系表达式作为条件
条件:
‘BEGIN {动作}‘ #在开始的时候执行什么动作
‘END{动作}’ #在结尾执行什么动作
动作:格式化输出,流程控制语句
动作:
{FS=‘’} #指定分割符
4.字符截取-sed命令
格式:sed [选项] ‘[动作]’ 文件名
选项:
-n:只会把经过处理的行输出
-e:允许对输入数据应用多条sed命令编辑
-i:用sed的修改结果直接修改读取数据的文件,而不是由屏幕输出
动作:
5.排序