1》系统默认变量

      1. 一共有几个参数 : $#

      2. 该运行程序的名字是什么 : $0

      3. 所有参数的值 : $@ 或 $*

      4. n个参数是什么 : $n

      测试script : mytest.sh

      #!/bin/bash

      echo "The num of parameters are  ==>$#";

      echo "The name of this program   ==>$0";

      echo "The values of parameters   ==>$@";

      parameters="$@";

      count=0;

      for var in $parameters

      do

          echo "The $count value        ==>$var";

          let count++;

      done    

      执行:sh mytest.sh 1 2 3 4 5 6 输出结果:

      The num of parameters are  ==>6

      The name of this program   ==>sleep.sh

      The values of parameters   ==>1 2 3 4 5 6

      The 0 value        ==>1

      The 1 value        ==>2

      The 2 value        ==>3

      The 3 value        ==>4

      The 4 value        ==>5

      The 5 value        ==>6

  2》系统操作符介绍

     1. 大小判定操作符

        -eq : = 

        -ne : !=

        -gt : > 

        -lt : <

        -ge : >=

        -le : <= 

     2. 文件系统相关测试

        [ -f $var ] : $var包含正常的文件路径或文件名,返回为真

        [ -x $var] : $var为可执行文件,返回为真

        [ -d $var ]: $var为目录,返回为真

        [ -e $var ]: $var文件存在,返回为真

        [ -c $var ]: $var是一个字符设备文件路径,返回为真

        [ -b $var ]: $var是一个块设备文件路径,返回为真

        [ -w $var ]: $var文件可写,返回为真

        [ -r $var ]: $var文件可读,返回为真

        [ -L $var ]: $var为符号链接,返回为真

     3. 字符串比较

       注意:使用字符串比较时,最好采用双中括号

             在“=”前后各有一个空格,如果忘记加空格那就不是比较关系了,而变成了赋值

       [[ $str1 = $str2 ]]   : 判字符串相等

       [[ $str1 != $str2 ]]   : 判字符串不等

       [[ $str1 > $str2 ]]   : $str1字符串序列大于$str2

       [[ $str1 < $str2 ]]   : $str1字符串序列小于$str2

       [[ -z $str1 ]]       : $str1是否为空 ""

       [[ -n $str1 ]]       : $str1 不为空

       if [[ -z $str1]] && [[ -n $str2 ]];

       then 

            execute commands ;

       fi  

     4. if  ||  for 让你的光驱托盘动起来吧。运行这个shell脚本吧,很有趣哦。        

#!/bin/bash
read -p "How many times do you want to exec:" n
if [ $n -eq 0 ];
then
    echo "Can not be zero ..."
    exit 0
fi
read -p "How long times do you want to sleep:" time
if [ $time -eq 0 ];
then
    echo "Can not be zero ..."
    exit 0
fi
for((i=0;i<$n;i++));
do
   eject             # 让光驱弹出
   sleep $time
   eject -t          # 让光驱合上
done

 

GitHub 加速计划 / li / linux-dash
10
2
下载
A beautiful web dashboard for Linux
最近提交(Master分支:1 个月前 )
186a802e added ecosystem file for PM2 5 年前
5def40a3 Add host customization support for the NodeJS version 5 年前
Logo

新一代开源开发者平台 GitCode,通过集成代码托管服务、代码仓库以及可信赖的开源组件库,让开发者可以在云端进行代码托管和开发。旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐