Linux笔记------bash脚本

2023-05-25 11:14:02 浏览数 (2)

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

0 人点赞