变量说明:
$$

Shell本身的PID(ProcessID)

$!

Shell最后执行的后台Process的PID

$?

最后执行的命令的结束代码(返回值)

$-

使用Set命令设定的Flag一览

$*

全部參数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出全部參数。

$@

全部參数列表。如"$@"用「"」括起来的情况、以"$1" "$2" … "$n" 的形式输出全部參数。

$#

加入到Shell的參数个数

$0

Shell本身的文件名称

$1~$n

加入到Shell的各參数值。

$1是第1參数、$2是第2參数…。

我们先写一个简单的脚本,运行以后再解释各个变量的意义

# touch variable

# vi variable

脚本内容例如以下:

#!/bin/sh

echo "number:$#"

echo "scname:$0"

echo "first :$1"

echo "second:$2"

echo "argume:$@"

保存退出

赋予脚本运行权限

# chmod +x variable

运行脚本

# ./variable aa bb

number:2

scname:./variable

first: aa

second:bb

argume:aa bb

通过显示结果能够看到:

$# 是传给脚本的參数个数

$0 是脚本本身的名字

$1是传递给该shell脚本的第一个參数

$2是传递给该shell脚本的第二个參数

$@ 是传给脚本的全部參数的列表





资料来源于网络资源:http://blog.sina.com.cn/s/blog_464f6dba0100psy9.html

随机推荐

  1. [BZOJ3997][TJOI2015]组合数学(Dilworth定理+DP)

    题目名字是什么就不能往那方面想. 每个点拆成a[i][j]个,问题变为DAG最小路径覆盖,由Dilworth定理转成最长反链. 使用Dilworth定理的时候要注意那些点之间有边,这里任意一个点和其右 ...

  2. [BZOJ 3140] 消毒

    Link: BZOJ 3140 传送门 Solution: 挺好的一道暴力题 首先发现可以每次贪心选择宽度为1的一面,即$1*x*y,1*x*z,1*y*z$ 那么对于与该面垂直的面,相当于解决了一行 ...

  3. 【推导】【暴力】Codeforces Round #432 (Div. 2, based on IndiaHacks Final Round 2017) C. Five Dimensional Points

    题意:给你五维空间内n个点,问你有多少个点不是坏点. 坏点定义:如果对于某个点A,存在点B,C,使得角BAC为锐角,那么A是坏点. 结论:如果n维空间内已经存在2*n+1个点,那么再往里面添加任意多个 ...

  4. 【筛法求素数】Codeforces Round #426 (Div. 1) A. The Meaningless Game

    先筛出来1000以内的素数. 枚举x^(1/3) 和 y^(1/3)以内的素因子,这样除完以后对于x和y剩下的因子,小的那个的平方必须等于大的. 然后判断每个素因数的次数之和是否为3的倍数,并且小的那 ...

  5. 【推导】Codeforces Round #410 (Div. 2) C. Mike and gcd problem

    如果一开始就满足题意,不用变换. 否则,如果对一对ai,ai+1用此变换,设新的gcd为d,则有(ai - ai+1)mod d = 0,(ai + ai+1)mod d = 0 变化一下就是2 ai ...

  6. 【线段树】POJ3225-Help with Intervals

    ---恢复内容开始--- [题目大意] (直接引用ACM神犇概括,貌似是notonlysucess?) U:把区间[l,r]覆盖成1 I:把[-∞,l)(r,∞]覆盖成0 D:把区间[l,r]覆盖成0 ...

  7. CSS写作建议和性能优化总结(未完待续)

    这里是我从网上的一篇文章看过来的,这里先做一点小结,之后再补充. 1.CSS渲染规则 今天在微博的一篇文章上看到的,之前我都以为渲染是从左往右渲染.发现我的想法是错的.之所以采用从右往左的渲染规则,是 ...

  8. centos6.5编译安装nginx

    系统64位 centos6.5 nginx官网:http://nginx.org/ 下载nginx源码包: wget  http://nginx.org/download/nginx-1.6.2.ta ...

  9. Linux(CentOS)下的vsftpd服务器配置-五岳之巅

    说明:VSFTPD这款软件,网上和书里有很多配置文章,但不一定适用于您的主机,不同版本默认值不一样,我现在使用的是vsftpd-2.0.5-12.el5_3.1.千万记住:修改配置文件后,必须重新启动 ...

  10. python logging模块用法

    http://blog.csdn.net/zyz511919766/article/details/25136485/ import logging logging.debug('debug mess ...