Bash /shell
代码语言:javascript复制#1形式
#!/bin/bash
#2强调
#条件表达式要放在方括号之间,并且要有空格,例如: [$a==$b] 是错误的,必须写成 [ $a == $b ]。
#3强调
#a=1 可以 a =1 不可以,变量名字和等号之间没有空格
#4格式
val=`expr $a $b`
echo "a b : $val"
#5强调
#乘号(*)前边必须加反斜杠()才能实现乘法运算
#6格式
#if语句
if condition1
then
command1
elif condition2
then
command2
else
commandN
fi
#7格式
for var in item1 item2 ... itemN
do
command1
command2
...
commandN
done
#8收获
#!/bin/bash
int=1
while(( $int<=5 ))
do
echo $int
let "int "
done
#以上实例使用了 Bash let 命令,它用于执行一个或多个表达式,变量计算中不需要加上 $ 来表示变量
#8
#until 循环
#9收获
运行sh文件 bash 1.sh
#10收获
tar -czvf test.tar.gz a.c //压缩 a.c文件为test.tar.gz
tar -zxvf是解压的命令
#11回顾
rm -rf * 删除所有无权限文件
touch 1.txt 创建文件
mkdir demo 创建目录
rm -r demo 删除目录
#12收获
执行sh文件
bash 1.sh
#13教训
rm -rf * 不能随便用,要慎重,路径错了,没有备份,跑路
#14收获
/ 根目录
home 家目录
uplooking 用户目录(本机用户密码都是uplooking)
/home/uplooking 三者关系
#!/bin/bash
#!/bin/bash
#15尝试写遍历一个目录下的文件名的脚本
cleanDir=/home/uplooking/save
cleanDay=`date -d"7 days ago " %Y%m%d `
cleanFile=www_$cleanDay.tar.gz
echo $cleanFile
cd $cleanDir
for file in $(ls *)
do
echo $file #变量保存的字符串
done
#16教训 Linx下的文件名字最后面有空格是允许的,但是你发现不了,除非ls下删除失败匹配失败往往是这种原因
#17回顾
vim
esc
:wq保存并推出
#18收获
使用root权限往往需要交互 sudo.. 密码。。。
脚本自动执行去掉交互
sudo ...<<EOF
your-password
EOF
bash教程
<https://www.runoob.com/linux/linux-shell-basic-operators.html