Shell:
归档,压缩
归档:将多个文件打包在一起 tar (归档,解档)
归档: tar -cvf ***.tar 文件列表
解档: tar -xvf ***.tar
1、gzip是GNU组织开发邮的一个压缩的程序
后缀: .gz
压缩:tar -czf ***.tar.gz 文件列表
解压:tar -xzf ***.tar.gz
bzip2也是压缩命令,压缩能力更强
压缩: tar -cjf
解压: tar -xjf
2、zip: linux提供了zip和unzip程序来压缩和解压程序,
压缩:zip
zip ***.zip 文件列表
解压:unzip
unzip ***.zip
Shell脚本:为了完成某一个任务,将相关的Shell命令存放在文件中,并自动执行。
1、脚本的解释器: /bin/bash
2、 Shell源文件的后缀名:.sh
3、编写第一个脚本:
# !/bin/bash
command1
...
4、输入输出:
输出: echo "信息" #输出行
printf "格式" 输出内容
输入:
read 变量名
read -p "提示" 变量名
5、执行程序: 路径/文件名
6、执行的顺序是:从上往下
7、程序=算法+数据
Shell是一门弱语言:Shell是没数据类型,只有一个字符串类型
定义变量:
变量名=值
引用变量:引用变量的内容
${变量名}:获取变量内容
${#变量名}: 获取变量长度
${变量名:n:m}: 获取字符串
字符串表示法: “hello” hello ‘hello’
‘$ var hello’ 都是字符串
“$ var hello” 引用变量的内容
8转义字符:对现有的字符拓展出其它意思
n \n (换行)
t \t (制表格)
数值测试:注意,由于Shell的数值均为字符串,需要借助test命令来判断大小
test 比较文件类型或者数值字符串的大小
test 数值1 -eq 数值2 是否相等 (真或假)
test 数值1 -ge 数值2 数值1是否大于或等于数值2
test 数值1 -gt 数值2 数值1是否大于数值2
test 数值1 -le 数值2 <=
test 数值1 -lt 数值2 <
test 数值1 -ne 数值2 !=
流程控制:选择控制 循环控制
选择控制:当某条件成立时,才执行。否则不执行
if condition
then
command...
else
command...
fi
多分支:
if condition1
then
command1
elif condition2
then
command2
elif condition3
then
command3
...
else
command...
fi
嵌套if
if condition
then
if condition
then
command1
fi
command...
fi