Linux shell编程

shell编程

shell是命令解释器,也可以编程.
常用的shell有

ash,bash,ksh,csh,zch

shell中的环境变量
HOME:保存注册目录的完整路径名
PTATH:保存用冒号分隔的路径路径,shell将按此给出的顺序搜索这些目录,查找可执行文件执行
TERM:终端类型
UID:当前用户的标识,一串数字
PWD:绝对路径
shell中的变量
临时变量:shell内部定义,包括自定义变量和位置变量
永久变量:就是环境变量,如$PATH,$LANG,$SHELL,$PS1,$HOME
变量命名:字母,数字,下划线组成,不可以数字开头,读变量用$. 
__注:值中有空格,需要使用"",单引号不解释其中变量,双引号会解析其中变量__
shell中其他的预定义临时变量
$#  //传给脚本的参数的个数
$0  //脚本本身的名字
$@ //传给脚本所有参数的列表
$*  //以一个字符串显示所有向脚本传递的参数
$$  // 脚本运行当前的ID号
$?  //显示上条命令的退出状态,0表示无错误,其它表示有错误
shell脚本编写
#! /bin/sh		//在shell中#表示注释,第一行的#!为特列,保证解释器解释本脚本
TIME=`date`		//反引号``表示会执行反引号里的命令
echo $TIME		//读变量是使用$
执行shell

1.给该用户赋予shell的执行权限
2.使用解释器 sh ./xxxx.sh

键盘输入-read
#! /bin/sh
read number
echo $read
算数运算

算数运算使用expr
运算符左右需要空格,加减乘除 ,其中乘的标志需要加转义符,将意思转移为本意乘

expr 3+5		//5
expr 3 + 5 		//8
expr 3 / 5		//8
expr 3 \* 5		//15
expr `expr 12 - 7` / 3		//1
循环语句

大于 -gt (greater than)
小于 -lt (less than)
大于或等于 -ge (greater than or equal)
小于或等于 -le (less than or equal)
不相等 -ne (not equal)

if-else
#输出三个参数最大数
#! /bin/sh

if [ $# -lt 3 ];then
        echo"numbers is not correct!"
else
        echo "ok!!!"
fi

if [ $1 -lt $2 ];then
        max=$2
else
        max=$1
fi
if [ $max -lt $3 ];then
        max=$3
fi      
echo "the max number is:$max"
while
#!/bin/sh
i=1
sum=0
while [  $i -lt 100 ]
do
	sum=`expr $sum + $i`
	((i++))
done
echo $sum
for
#!/bin/sh
sum=0
for i in `aeq 100`
do
	sum=`wxpr $sum + $i
	i=`expr $i + 1`
done
echo $sum
//或
sum=0
for((i=0;i<=100;i++))
do
	sum=`expr $xum + $i`
done
echo $sum
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值