shell学习笔记

1,shell是非类型的解释型语言
shell通常以.sh结尾命名
新建test.sh

sh -n test.sh  查看脚本是否有问题
sh test.sh  执行脚本
第一行#!/bin/bash       表名是shell脚本
定义变量   a=123  等号左右不能有空格
引用变量   $a或${a}

2,系统变量

$1  代表第一个参数
$2  代表第二参数与
$?  判断上一个输入是否正确,正确返回0
$*  代表所有参数
$#  统计参数的个数

3,逻辑运算符

-f  判读文件是否存在
-d  判断目录是否存在
-eq 等于,用于整型比较
-ne 不等于,用于整型比较
-lt 小于,用于整型比较
-gt 大于,用于整型比较
-le 小于等于,用于整型比较
-ge 大于等于,用于整型比较
-a  相当于and
-o  相当于or
-z  空字符串

4,提交判断
例一

#if后面有空格,(())中一般用于数字,[[]]一般用于-lt...
#!/bin/bash
A=123
if (($A > 100));then
        echo "A 大于 100"
elif [[$A -lt 100]];then
		echo "A 小于 100"
else
        echo "A 等于 100"
fi

例二:判断文件是否存在

#!/bin/bash
DIR=/test
if [[ -d $DIR ]];then
        echo "文件存在"
else
        echo "文件不存在"
fi

例三:case

#!/bin/bash
case $1 in
        a )
                echo "a"
        ;;
        b )
                echo "b"
        ;;
        * )
                echo "其他"
        ;;
esac

例四 :select

#!/bin/bash
select i in a b c
do
        echo "你选择的是:"$i
done

5,循环

#!/bin/bash
#方式一
for ((i=1;i<=10;i++))
do
        echo "${i}"
done
#方式二
for i in `find /test/ -name "*.sh"|tail -2`
do
        echo "${i}"
done
方式三
i=0
while [ $i -lt 10 ];
do
        echo "$i"
        ((i++))
done 

6,read

read -p "a:" a
echo $a
或read a #无提示 
echo $a
案例一:
#!/bin/bash
while  read line
do
        echo $line
done </test/ip.list
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值