分享

shell语法之二

 紫火神兵 2014-11-06

set      ---设置当前shell的变量
env      ---显示当前用户的变量
export   ---导出成用户变量

$0               ---此变量的值为:当前正在运行的脚本的名字
$#               ---此变量的值为:当前正在运行的脚本的参数的个数     

$$               ---此变量的值为:当前正在运行的脚本的进程号  
$1,$2,$3...      ---此变量的值为:当前正在运行的脚本的一个变量的第n个参数  

$*               ---此变量的值为:当前正在运行的脚本的一个变量的全部参数 
$@               ---此变量的值为:当前正在运行的脚本的一个变量的全部参数 

注意:$* 和 $@的不同之处在于:$@比$*更高级,它不使用IFS环境变量,所以即使IFS为空,参数也不会挤在一起,故推荐使用$@而不用$*
例:vi first.sh

 #!/bin/sh
 echo this is $0 program --将在终端打印"this is ./first.sh program"
 
 myvar="hello,mxh20999" --定义一个临时变量myvar
 
 echo $myvar --显示变量myvar
 echo "$myvar" --显示变量myvar
 echo '$myvar' --显示myvar字符串,之所以不同是因为双引号和单引号的区别。
 echo \$myvar  --\符号也能“干掉”$
 
 echo Enter some text--显示"Enter some text"字符串

 read myvar --读用户输入字符串,并将其存放在myvar变量中
 echo '$myvar' is now equals $myvar --显示myvar的新值
  
 set var1 var2 var3 --设置first.sh这个脚本的参数变量为var1 var2 var3
  
 echo '$@--------->' "$@" --显示所有参数
 echo '$*--------->' "$*" --显示所有参数
 echo '$#--------->' "$#" --显示所有参数个数
 echo '$1--------->' $1   --显示所有第一个参数
 echo '$2--------->' $2   --显示所有第二个参数
 echo '$3--------->' $3   --显示所有第三个参数
 echo 'ID of this process is' $--显示脚本程序的进程号
 
 exit 0 --退出


运行脚本效果:

说明:如果运行./first.sh  a b c
那么a b c 即是first.sh的3个参数.

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多