
linux
文章平均质量分 78
wiesin
这个作者很懒,什么都没留下…
展开
-
bash循环总结
<br />for循环<br />for args in [list]<br />do<br />done<br />for planet in Mercury Venus Earth Mars Jupiter Saturn Uranus Neptune Plutodoecho $planet # Each planet on a separate line.Chapter 11. Loops and Branches 133doneecho; echo<br />如果in [list]原创 2010-12-09 20:42:00 · 2009 阅读 · 0 评论 -
$*和$@的区别
<br />$*当被双引号引用的时候 会把所有的参数看成是一个字符串,不被引用的时候,把参数分开处理<br />$@不管被双引号引用或者不被引用,都把每个参数看成是一个字符串<br />index=1 # Initialize count.echo "Listing args with /"/$*/":"for arg in "$*" # Doesn't work properly if "$*" isn't quoted.doecho "Arg #$index = $arg"let "原创 2010-12-08 12:49:00 · 495 阅读 · 0 评论 -
declare和random
<br />declare可以为变量声明类型:<br />declare -i var=1 # 声明为整数类型<br /><br />var=var+1 #此时数学运算不需要let或者双圆括号<br />还有另外一点区别:<br />n=6/3echo "n = $n" # n = 6/3declare -i nn=6/3echo "n = $n" # n = 2<br />declare -r var=1 #此时var的值不能在改变<br />declare -f声明函数 如果后面没有参数原创 2010-12-08 13:43:00 · 596 阅读 · 0 评论 -
bash操作符
为变量做加1操作的N中方法n=1let "n=n+1";let "n=$n+1": $((n=n+1));#冒号的作用是防止把后面的作为一个命令处理,注意冒号后面的空格((n=n+1)); #上面的简写形式: $[n=n+1]; #用法同(())一样 但是不能写成上面那种形式 双圆括号可以进行数值转换,如:$echo $((0x32))50原创 2010-12-08 12:10:00 · 601 阅读 · 0 评论 -
linux字符串相关操作汇总
${#string}expr length $stringexpr "$string" : '.*'返回字符串string的长度expr match "$string" '$substring'expr "$string" : '$substring'$substring是正则表达式返回匹配的字符数stringZ=abcABC123ABCabc# |------|# 12345678echo `expr match "$stringZ" 'abc[A-Z]*.2'` # 8e原创 2010-12-08 15:00:00 · 593 阅读 · 0 评论 -
bash笔记之变量,引用,测试
可以把命令赋值给变量 例如 a=`ls -l` # Assigns result of 'ls -l' command to 'a'echo $a # Unquoted, however, it removes tabs and newlines.echoecho "$a" # The quoted variable preserves whitespace.或者使用$()的形式 也是可以的 例如R=$(cat /etc/redhat-release)arch=$(uname -原创 2010-11-24 20:32:00 · 976 阅读 · 0 评论