shell练习题(一)——参数,运算符,判断目录,文件存在

一、参数相关

echo "参数的个数为:$#"
echo "参数分别是:$*"
echo "文件的名称是:$0" "第一个参数为:$1" "第二个参数为:$2"

二、判断分数

#!/bin/bash

score=$1
if [ -z $score ];then
        echo "Please input a number that range is 0 to 100!"
        exit
fi
if   [[ $score -gt 80 ]];then
        echo "Best!"
elif [[ $score -gt 70 ]];then
        echo "Better!"
elif [[ $score -gt 60 ]];then
        echo "Good!"
else
        echo "No pass!"
fi

给文件一个执行权限后

二、判断文件或目录是否存在(判断目录则将 -f 改为 -d 即可)

#!/bin/bash

files=/tmp/test.txt

if [ ! -f $files ];then
	echo "OK" > $files
else
	echo -e "\033[32m----------------\033[1m"
	cat $files
fi

三、输入路径自动创建文件

#!/bin/bash

read -p '请输入创建文件的路径: ' file_path
touch $file_path
echo "文件创建成功!"
ls -l $file_path

结果

四、计算两个数,各类运算符

#!/bin/bash
#jisuan  [ !false ] [ $a -gt 20 -o $b -lt 10 ] [ $a -gt 20 -a $b -lt 10 ]

a=10
b=20
echo "a=$a"
echo "b=$b"
echo
echo "a+b=" `expr $a + $b`
echo "a-b=" `expr $a - $b`
echo "a*b=" `expr $a \* $b`
echo "b/a=" `expr $b / $a`
echo "b%a=" `expr $b % $a`
echo
#equal  == , not equal !=
if [ $a == $b ]
then
        echo "a等于b"
else
        echo "a不等于b"
fi

 

五、计算1~100的和

#!/bin/bash
j=0
for ((i=1;i<=100;i++))
do
	j=`expr $i + $j`
done
echo $j

六、逐行读取某个文件的内容

#!/bin/bash

while read line

do
	echo $line
done < /etc/hosts

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值