sh shell 脚本
sh shell 脚本
sh shell 脚本
简单shell,打印昨天时间,并输出到屏幕上,注意 反引号
echo 把执行命令的返回结果输出到屏幕上
运行脚本 sh test.sh ; test.sh 内容如下
1 2 3 4 5 6
| #!/bin/bash echo 'date -d yesterday +%Y%m%d'
echo `date -d yesterday +%Y%m%d` echo `ls /www` touch /www/test.txt
|

demo 2,创建文件,运行命令 sh testlog.sh
1 2 3 4 5
| #!/bin/bash BASEPATH=/data/$(date -d yesterday +%Y%m) bak=$BASEPATH/$(date -d yesterday +%Y%m%d%H%M).test.txt mkdir -p $BASEPATH echo $BASEPATH
|

demo3 运行 test.sh 文件使用 source 命令
1 2 3 4 5 6
| source test.sh # 四个的区别区别, 执行权限; 脚本报错后是否继续执行 1) ./test.sh 2) sh test.sh 3) . test.sh 4) source test.sh
|
利用当前时间作为目录
1 2
| #!/bin/bash cp -arv /home/fei/www/aaa/ "/home/fei/www/ffffffffffff_"$(date +%Y%m%d%H%M)
|
其他
1 2 3 4 5 6 7 8 9 10
| cat /etc/shells 使用 #sh test.sh #dash test.sh #bash test.sh #rbash test.sh 都是可以执行的
root@ubuntu:/home/fei/web# cat /etc/shells # /etc/shells: valid login shells /bin/sh /bin/dash /bin/bash /bin/rbash root@ubuntu:/home/fei/web#
|
判断语句
- 每个
case
分支用右圆括号开始,
- 用两个分号
;;
表示 break
,即执行结束,跳出整个 case … esac 语句,
- esac(就是 case 反过来)作为结束标记
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| #!/bin/bash echo ":::::::::服务管理系统::::::::::::::::::::::::::::" echo "++ 作者:赵大飞, QQ:1097625354 ++" echo "" echo "请选择你要的操作" echo " 1、选择A" echo " 2、选择B" echo " 3、跳过" echo "" read num case "$num" in 1) echo "1111" ;; 2) echo "222222222" ;; 3) echo "跳过3" ;; 8|9) echo "输入的是8或者9" ;; 999) echo "跳过999" ;; *) echo "输入错误,退出" ;; esac echo "" echo "" echo " ***已经退出***"
|
参考学习: Shell 流程控制