declare a
#定义一个名叫a的变量,也可以不定义直接赋值
a=hello
#可以不预先定义直接对变量赋值
echo $a
#返回a的值,$符号表示引用一个变量的值
#打印环境变量的三种命令
set #显示当前Shell所有变量
env #显示与当前用户相关的环境变量
export #显示从Shell中导出成环境变量的变量,也能通过它将自定义变量导出为环境变量
#创建shell脚本后,可以使用vim,gedit,sublime
touch a.sh #创建了a.sh文件
vim a.sh #vim编辑器编辑文件
gedit a.sh #gedit编辑器编辑文件
变量修改
${变量名#匹配字串} | 从头向后开始匹配,删除符合匹配字串的最短数据 |
${变量名##匹配字串} | 从头向后开始匹配,删除符合匹配字串的最长数据 |
${变量名%匹配字串} | 从后向前开始匹配,删除符合匹配字串的最短数据 |
${变量名%%匹配字串} | 从后向前开始匹配,删除符合匹配字串的最长数据 |
${变量名/旧的字串/新的字串} | 将符合旧字串的第一个字符替换为新的字串 |
${变量名//旧的字串/新的字串} | 将符合旧字串的全部字串替换为新的字串 |
变量删除
unset mypath
文件搜索
#与搜索命令有关的有find,which,whereis,locate
sudo find /home/ -name demo01
#在/home/的下面查找名字为demo01的文件或目录
文件压缩
在Windows上,压缩文件后缀主要是.zip和.7z。
在Linux上,压缩文件命令很多,如下:
*.zip | zip程序打包压缩的文件 |
*.rar | rar程序压缩的文件 |
*.7z | 7zip程序压缩的文件 |
*.tar | tar程序打包,未压缩的文件 |
*.gz | gzip程序压缩的文件 |
*.bz2 | bzip2程序压缩的文件 |
*.xz | xz程序压缩的文件 |
*.tar.gz | tar打包,gzip程序压缩的文件 |
*.tar.bz2 | tar打包,bzip2程序压缩的文件 |
*.tar.xz | tar打包,xz程序压缩的文件 |
*.tar.7z | tar打包,7z程序压缩的文件 |
解压缩命令
unzip命令解压缩zip文件
zip:
打包:zip a.zip a #如果a是目录,则需添加-r参数
解打包:unzip a.zip #指定路径添加-d参数
tar:
打包:tar -cf demo.tar demo #-f后紧跟创建的文件名
解打包:tar -xf demo.tar #-x还原文件,指定路径添加-c参数