eval命令
用法:eval command
举例:
1. 两次扫描(先替换,后执行)
有一文件,名为test.txt,内容为hello shell world!
变量myfile="cat test.txt"
echo $myfile 显示结果为:cat test.txt
eval echo $myfile 显示结果为:hello shell world!
2. 获取最后一个参数
eval echo /$$#
第一遍扫描去掉/,shell再次执行时,$#是参数个数,$($#)是最后一个参数
expr命令
作用:用于简单的整数计算和字符串操作。
用法:expr expression
举例:
整数运算:
expr 14 % 9 5
expr 10 + 10 20
expr 1000-900 100
expr 1000/10 100
expr 10 /* 100 1000 (使用*时,需用/进行转义)
字符串操作:
计算字符串长度 expr length "this is a test" 结果为:14
抓取子字符串 expr substr "this is a test" 3 5 结果为:is is
获取第一个字符出现的位置 expr index "sarasara" a 结果为:2
字符串重现 expr quote sara 结果为:sara
增量计数:
LOOP=0
LOOP=`expr $LOOP+1`
模式匹配
使用expr通过制定冒号选项计算字符串中的字符数。
VALUE=account.doc
expr $VALUE : '.*' 结果为8,变量VALUE中一共有8个不同的字符
expr $VALUE : '[0-9]*' 计算字符串中的数字个数
没有评论:
发表评论