Skip to main content
您好,欢迎光临IDC汇,需要什么服务器直接咨询客服,方便快捷。客服QQ 点击这里给我发消息
首页 > 服务器安全 »正文

shell基础知识

服务器安全 webadmin 2020-06-26 08:47:47 查看评论 加入收藏

自栋校准时间 yum install -y ntp  使用ntpdate time.fudan.edu.cn去校准时间


date在脚本中最常用的几个用法:

date +%F  xxxx-xx-xx


date +%T xx:xx:xx 


date +%Y 以四位数字格式打印年份


date +%y 以两位数字格式打印年份


date +%m 月份


date +%d 日期


date +%H 小时


date +%M 分钟


date +%S 秒


date +%s 时间戳


date +%w 星期,如果结果显示0 则表示周日


有时在脚本中会用到一天前的日期:date -d "-2 days" +%F


定义变量的格式为 变量名=变量的值 当在脚本中引用变量时需要加上 ‘$’ 符号,这跟前面讲的在shell中自定义变量是一致的。

数学计算要用[ ]括起来并且外头要带一个 ‘$’


-lt (小于),-gt (大于),-le (小于等于),-ge (大于等于),-eq (等于),-ne (不等于)。



read -p "Please input a number: " x

read -p "Please input another number: " y

sum=$[$x+$y]

echo "The sum of the two numbers is: $sum"

read 命令就是用在这样的地方,用于和用户交互,把用户输入的字符串作为变量值。脚本执行过程如下:


有一个$0,不过它代表的是脚本本身的名字。


if  判断语句; then

    command

fi



if  判断语句  ; then

    command

else

    command

fi



在if1.sh中出现了 ((a<60)) 这样的形式,这是shell脚本中特有的格式,用一个小括号或者不用都会报错,请记住这个格式


if  判断语句一  ; then

    command

elif  判断语句二; then

    command

else

    command

fi



-e :判断文件或目录是否存在


-d :判断是不是目录,并是否存在


-f :判断是否是普通文件,并存在


-r :判断文档是否有读权限


-w :判断是否有写权限


-x :判断是否可执行


使用if判断时,具体格式为:


if [ -e filename ] ; then





case  变量  in

value1)

          command

          ;;

value2)

          command

          ;;

value3)

          command

          ;;

*)

          command

          ;;

esac

上面的结构中,不限制value的个数, * 则代表除了上面的value外的其他值。



脚本中的 seq 1 5 表示从1到5的一个序列。



for 变量名 in 循环的条件; do

     command

done



while  条件; do


          command

done


另外你可以把循环条件拿一个冒号替代,这样可以做到死循环,阿铭常常这样写监控脚本:


while :; do

    command

    sleep 3

done



在shell脚本中,函数一定要写在最前面,

function 函数名() {


command


}


广告06

微信