shell

shell{
 1 while 循环 :【
 
    while [ $i -lt 10 ]
    do
    done
    注意 在变量自增的时候 
         如果直接 $num+1 字符串拼接  


    num=$(($num+1))     #当数字计算
    num=$[$num+1]   //[]可以代替上面
  例如:
     num=1
     while (( $num<10 ))
     do
        echo $num
num=$(($num+1))
             done
    输出1-10
   】
   利用循环创建目录   mkdir  "dir"$num  
   利用循环删除目录   rm -r "dir"$num
   单行注释 #
   多行注释 <<!
                       ...
                  !


 2 for 语法【
       for n in a b c d 
     do 
echo $n
     done
     输出abcd


     for((i=0;i<100;i++))  或者  for i in {1..100}
         do 
   echo $i
done 
     输出0-99                   输出1-100
       
 】
 例子:删除文件 删除所有大小为0的文件
 分析:1 遍历文件 2 判断文件大小 如果为 0
 
 判断文件大小 cut -d ' ' -f 5   //按照空格截取  获取第五列属性
例如:
 ls -l var.sh | cut -d ' ' -f 5  
   
 在循环等位置执行命令的时候 有歧义 可以使用 `` 包含 表命令 tab 上面 1 左面的那个键
 
 以下代码删除空文件
  for fn in `ls`
    do
       if [ "`ls -l $fn | cut -d '' -f 5`" -eq 0 ];
       then 
            rm $fn
            echo "delete"$fn
       fi
    done


目录的大小为4096 不管是否为空
以下代码为删除空目录和空文件夹
for fn in `ls`
  do
    if test -d $fn           //test -d 是判断是否为目录
         if [ "`ls -A $fn`" == "" ];    //ls -A是显示目录中的文件 包括隐藏的
     rm -r $fn
     then echo "delete empty dir"$fn
fi
    else
         if[ "`ls -l $fn | cut -d '' -f 5`" -eq 0 ];
    then 
           rm $fn
                   echo delete empty file"$fn
fi
    fi
  done


 while:break【
  while :    是死循环
  完成了一个 直到某个条件才结束循环的功能
  exit!
 】
 例如:
       echo "haha" >> haha.log //5s一个写进去文件


输入文件名连续创建文件夹 直到输入exit!退出
      echo "input dir name for create,input 'exit!' for quit"
      while :    //死循环
      do
         read -p 'input name : ' fn //相当于scanner之前的提示
if[ "$fn" == "" ];  //注意这个变量要加引号 判断字符串是否为空
     then echo "illegal file name"
         elif [ $fn == "exit!" ]
      then
      echo "exit now! " 
      break;     //不要把break 写在echo后面  
else
       echo "mkdir dir"
       mkdir $fn
  fi
      done


}
函数{
 1 定义函数 
     function 函数名 () { 函数体 }
     例如:
     function first(){
        echo "hello world!"
     }   


     function add(){
       result=$[$1+$2] //两个变量相加
       echo $result
     }
 2 调用函数  函数名 参数1 参数2
       first //函数的调用  先声明后使用
       echo $(first)"sasasa"  //输出函数
           结果:hello worldsasasa
       add 1 2
           结果:3
 3 $1 取第一个参 
    echo 输出结果 $(函数名取结果)
}
日期命令
     date  能获得时间  没有毫秒级别的输出
  格式化时间
      date +"%m-%Y" //12-2017
      date +"%s"  //秒
      date +"%N" //当前时间的纳秒部分
开机自动重启网卡{
 修改配置文件 
 会查 会操作 
}
练习:制作一个随机数的函数并调用 
      要求 可以指定 最大最小值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值