shell基本语法

1赋值

a=123

a=$p

 

2输入

read

-p 提示输入内容

-t 指定取值等待时间(秒)

read -p ‘please input your names:‘ a#提示语和变量之间一个空格,表示用一个空格,隔开输入;

#if 以空格隔开,连续输入,则变量a为一个数组

 

3输出

echo $a

 

条件判断

 

 

if [ “$pwd_entered” = “123456” ] #[ "之间的空格很重要构成判断=

then

echo 1

else

echo 2

fi #结束用fi

if [ `find /root -name "123.log"`        ]#执行成功返回true,否则false

 

case 表达式 in

匹配值 1)  动作;;

匹配值 2)  动作;;

* ) 动作;;#无匹配则执行此动作

esac

 

循环控制语句

for 变量 in 数组

do

劢作

done

 

while ((1))

do

action

break

done

 

运算

$((1+2))

 

test 命令

test 命令用于检查某个条件是否成立,它可以进行数值、字符和文件三 个方面的测试。

语法 test(选项)

参数

 -e 文件名 如果文件存在则为真

if test -e "/root/$fileName"

 

 -r 文件名 如果文件存在且可读则为真

-w 文件名 如果文件存在且可写则为真

-x 文件名 如果文件存在且可执行则为真

 

数值测试

 参数

 -eq 等于则为真

if[ $a -eq $b ]

-ne 不等于则为真

 -gt 大于则为真

 if[ $a -gt $b ]

-ge 大于等于则为真

-lt 小于则为真

if[ $a -lt $b ]

-le 小于等于则为真

 

字符串测试

参数

 = 等于则为真

 != 不相等则为真

 -z 字符串 字符串的长度为零则为真

 -n 字符串 字符串的长度不为零则为真

运算

$((1+2))=$[1+2]

`seq 5` = [1,2,3,4,5]

 

格式

##-n选项,不换行,-e使用制表符

for i in `seq 1 9`

   do

    for j in `seq 1 $i`

       do

         k=$[$i*$j]

     ##-n选项,不换行,-e使用制表符

         echo -ne "$j""X""$i=$k\t"

       done

    echo

 done

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值