shell编程基础命令

一、read命令

从键盘读取数据,赋值给变量

Ex1: 
    read name
Ex2:   
    read –p "请输入密码:" –n   6   -t   5   password
    echo   -e  "\npassword is $password"

注1:当输入的词组个数大于需要的参数个数,则多出的词组将被作为整体为最后一个参数接收

参数说明:

-p:输出提示文字
-n 输入字符串长度,达到此长度,自动结束
-t 输入限制时间
-s 隐藏输入内容
-e 使转义功能生效

二、expr命令

对整数型变量进行算术运算

Ex:
    expr  3  +  5
    expr   3  \* 5
Ex2:
    expr ` expr 5  -  1`   /   2
    num=` expr   $var  /  2`

三、echo命令

用于字符串的输出显示 

echo   $var
echo   It   is   a   test   file
开启转义 :  -e
    echo  -e   “ hello   \n   world”
    echo   -e   “hellokitty \c”
    \n    #换行
    \c    #不换行

四、printf命令

与echo功能相同,用来输出,功能更强大,如格式化字符串,指定字符串的宽度,左右对齐方式,默认不换行,可以手动添加\n

语法:printf     format-string    [arguments……...]
说明:format-string:    格式控制字符串 ; arguments:    参数值列表
Ex:
printf  “%d   %s\n”    1   “abc”
printf  %s   abcdef
printf  %s  abc  def         #此格式只指定了一个参数,但是多出的参数仍然会按照该格式输出,格式被重用
printf  “%s  %s  %s\n”   a b c d e f g h I j
printf  “%s  and  %d” #没有参数时,%s为空,%d为0

%d     %s     %c     %f?格式替代符详解:
d: Decimal 十进制整数?-- 对应位置参数必须是十进制整数,否则报错!
s: String 字符串?-- 对应位置参数必须是字符串或者字符型,否则报错!
c: Char 字符?-- 对应位置参数必须是字符串或者字符型,否则报错!
f: Float 浮点?-- 对应位置参数必须是数字型,否则报错!

五、test命令

用于测试变量是否相等、是否为空、文件类型等

格式:test    测试条件
整数测试
test  v1  -eq  v2    测试两个数是否相等
test  v1  -gt  v2    测试是否v1>v2
test  v1  -ge  v2    测试是否v1>=v2
test  v1  -lt  v2    测试是否v1<v2 
test  v1  -le  v2    测试是否v1<=v2 
test  v1  -ne  v2    测试两个数是否不相等    
字符串测试
test  str1  =  str2    测试字符串是否相等
test  str1  !=  str2    测试字符串是否不相等
test  str1        测试字符串是否不为空
test  -n  str1        测试字符串是否不为空
test  -z  str1        测试字符串是否为空
文件测试
test  -d  file    指定文件是否目录
test  -f   file    指定文件是否是常规文件
test  -x  file    指定文件是否可执行
test  -r  file    指定文件是否可读
test  -w  file    指定文件是否可写
test  -a  file    指定文件是否存在
test  -s  file    文件的大小是否非0

六、shift命令

参数左移,每执行一次,参数序列顺次左移一个位置,$#的值少一个,多数用于分别处理每一个参数,移出去的参数不再可用

ls -l   p1  p2 p3  p4 p5
p2 p3  p4 p5
p3  p4 p5
p4 p5
p5

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值