变量说明:
$$ Shell本身的PID(ProcessID)
$! Shell最后运行的后台Process的PID
$? 最后运行的命令的结束代码(返回值)
$- 使用Set命令设定的Flag一览
$* 所有参数列表。 所有的参数被认为是一个字符串
$@ 所有参数列表。参数是独立的字符串
$# 添加到Shell的参数个数
$0 Shell本身的文件名
$1~$n 添加到Shell的各参数值。$1是第1个参数、$2是第2个参数…。
通过一个脚本,来看看各个变量的效果
#!/bin/sh ## RustFisher echo "----------------------" echo "PID: \$$ $$" echo "option numbers: \$# $#" echo "last return: \$? $?" echo "all parameters: \$* $*" echo "all parameters: \$@ $@" echo "file name: \$0 $0" echo "1st param: \$1 $1" echo "2nd param: \$2 $2" echo "3rd param: \$3 $3" echo "4th param: \$4 $4" echo "9th parem: \$9 $9" echo "-----------------------" index= echo "get args by \"\$@\":" for arg in "$@" do echo "Arg #$index=$arg" let "index+=1" done echo "-----------------------" index= echo "get args by \"\$*\":" for arg in "$*" do echo "Arg #$index=$arg" done echo "-----------------------"
输出结果:
$ sh show.sh dont "worry be" happy ---------------------- PID: $$ option numbers: $# all parameters: $* dont worry be happy all parameters: $@ dont worry be happy show.sh 1st param: $ dont 2nd param: $ worry be 3rd param: $ happy 4th param: $ 9th parem: $ ----------------------- get args by "$@": Arg #=dont Arg #=worry be Arg #=happy ----------------------- get args by "$*": Arg #=dont worry be happy -----------------------
随机推荐
-
【小练习02】CSS--网易产品
要求用css和HTML实现下图效果: 代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8& ...
-
lucene全文搜索之二:创建索引器(创建IKAnalyzer分词器和索引目录管理)基于lucene5.5.3
前言: lucene全文搜索之一中讲解了lucene开发搜索服务的基本结构,本章将会讲解如何创建索引器.管理索引目录和中文分词器的使用. 包括标准分词器,IKAnalyzer分词器以及两种索引目录的创 ...
-
定期清空log文件
# auto-del-log.sh #!/bin/shfor i in `find . -name "*.out" -o -name "*.log"`do c ...
-
tostring方法
//__tostring()方法//输出内容时不报错 用法实例:class Ren{ public $name; public function __tostring() { return " ...
-
ArcGIS Earth(原谷歌地球)如何获取高精度矢量地图数据?(shp文件/要素类/kml)
大家好,这次来分享干货.做地理分析的同学,或者需要使用地图却不知道哪里有矢量数据的时候,怎么办呢? 这次,我就告诉大家哪里能自己手工制作矢量点线面数据!注意哦,是自己绘制的. 使用到的软件: ArcG ...
-
JDBC 数据库连接操作——实习第三天
今天开始了比较重量级的学习了,之前都是对于Java基础的学习和回顾.继续上篇的话题,<谁动了我的奶酪>,奉献一句我觉得比较有哲理的话:"学会自嘲了,而当人们学会自嘲,能够嘲笑自己 ...
-
Akka(9): 分布式运算:Remoting-远程构建式
上篇我们讨论了Akka-Remoting.我们说Akka-Remoting是一种点对点的通讯方式,能使两个不同JVM上Akka-ActorSystem上的两个Actor之间可以相互沟通.Akka-Re ...
-
angularJS插入html及更换iframe的src
html: ng-bind-html <div class="tabs_content" ng-bind-html="specialHtml">&l ...
-
委托(C#)
委托,delegate 关键字用于声明一个引用类型,该引用类型可用于封装命名方法或匿名方法.委托类似于 C++ 中的函数指针:但是,委托是类型安全和可靠的.委托类型声明的格式如下: public de ...
-
根据list得到list中的最大值最小值
List ll = new ArrayList(); ll.add(new BigDecimal(1)); ll.add(new BigDecimal(4.99)); ll.add(new BigDe ...