网站主机技术 在线

795Shell test 命令

result=$[a + b]

等同于:

result=`expr $a + $b `

794Shell test 命令

符号含义:

1. eq  (equal的缩写),表示等于为真

2. ne    (not equal的缩写),表示不等于为真

3. gt     (greater than的缩写),表示大于为真

4. ge  (greater&equal的缩写),表示大于等于为真

5. lt    (lower than的缩写),表示小于为真

6. le   (lower&equal的缩写),表示小于等于为真

793Shell printf命令

%d %s %c %f 格式替代符详解:

d: Decimal 十进制整数 -- 对应位置参数必须是十进制整数,否则报错!

s: String 字符串 -- 对应位置参数必须是字符串或者字符型,否则报错!

c: Char 字符 -- 对应位置参数必须是字符串或者字符型,否则报错!

f: Float 浮点 -- 对应位置参数必须是数字型,否则报错!

如:其中最后一个参数是 "def",%c 自动截取字符串的第一个字符作为结果输出。

$  printf "%d %s %c\n" 1 "abc" "def"
1 abc d

792Shell echo命令

read 命令一个一个词组地接收输入的参数,每个词组需要使用空格进行分隔;如果输入的词组个数大于需要的参数个数,则多出的词组将被作为整体为最后一个参数接收。

测试文件 test.sh 代码如下:

read firstStr secondStr
echo "第一个参数:$firstStr; 第二个参数:$secondStr"

执行测试:

$ sh test.sh 
一 二 三 四
第一个参数:一; 第二个参数:二 三 四

实例, 文件 test.sh:

read -p "请输入一段文字:" -n 6 -t 5 -s password
echo -e "\npassword is $password"
参数说明:
  • -p 输入提示文字
  • -n 输入字符长度限制(达到6位,自动结束)
  • -t 输入限时
  • -s 隐藏输入内容
$ sh test.sh 
请输入一段文字:
password is asdfgh

791Shell echo命令

echo输出的字符串总结

===================================================================

       能否引用变量  |  能否引用转移符  |  能否引用文本格式符(如:换行符、制表符)

单引号  |           否           |             否             |                             否

双引号  |           能           |             能             |                             能

无引号  |           能           |             能             |                             否                          

===================================================================