shell编程

第一个:比较两个数的大小

在shell编程中,如果多个关键字写在一行的话,关键字之间应该用分号隔开,否则会出现错误无法运行。

#!/bin/bash
#将第一个命令行参数传递给变量a,第二个命令行参数传递给变量b
a=$1
b=$2
 
#判断a或者b变量是否为空, 只要有一个为空就打印提示语句并退出
if [ -z $a ] || [ -z $b ]
then
     echo "please enter 2 no"
     exit 1
 
#判断a和b的大小,并根据判断结果打印语句
fi
if [ $a -eq $b ]
then
     echo "number a = number b"
else if [ $a -gt $b ]
     then
         echo "number a>number b"
     elif [ $a -lt $b ]
         then
             echo "number a<number b"
     fi
fi


第二个:统计文件夹中文件的数目

#!/bin/bash
#变量counter用于统计文件的数目
counter=0
 
#变量files遍历一遍当前文件夹
for files in *
do
  #判断的files是否是文件,如果是就将counter变量的值加一再赋
#给自己
  if [ -f "$files" ]
  then
    counter=`expr $counter + 1
`#此处不是单引号,而是 `
  fi
done
 
#输出结果
echo "There are $counter files in `pwd`"

 

第三个例子:讲一个数字逆序

#!/bin/bash
 
#提示用户输入
echo -n "Pleasw enter number : "
read n #读入输入的值放到变量n中
sd=0
rev=""
on=$n #将变量n的值保存到变量on中,方便以后用到
echo "You put number is $n"
while [ $n -gt 0 ]
do
     sd=$(( $n % 10 )) #求余
     n=$(( $n / 10 ))  #去掉当前的最后一位数后剩下的数
     rev="$rev$sd" #将当前的最后一位数放到字符串之后
done
echo   "$on in a reverse order $rev"

 

第四个例子:移动一文件,如果目标位置存在该文件,则监视该文件,直到文件被删除后才移动该文件

#!/bin/bash
 
#判断命令行是否代带有两个文件名的参数
if [ "$1" = "" ] || [ "$2" = "" ]
then
     echo "Please enter file name"
     exit 1
fi
 
#判断目标文件是否存在
if [ -e $2 ]
then
  echo "The file already exists"
  until [ ! -f $2 ] #监视该文件是否被删除
  do
         sleep 1
     done
  echo "The file have been deleted"
fi
#执行源文件移动为目标文件的命令
if [ ! `mv $1 $2` ]
then
     echo "mv sucessful"
else
     echo "mv error"
fi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值