【参考文章】:linux中shell变量$#,$@,$0,$1,$2的含义解释

1. 变量说明

1.1 $$

  Shell本身的PID(ProcessID)

1.2 $!

  Shell最后运行的后台Process的PID

1.3 $?

  最后运行的命令的结束代码(返回值) 成功时返回 0,失败时返回 1 或者其他。

  可以用来判断脚本中命令的执行结果以决定是否要进行下一步或者退出。

1.4 $-

  使用Set命令设定的Flag一览

1.5 $*

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

1.6 $@

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

1.7 $#

  添加到Shell的参数个数

1.8 $0

  Shell本身的文件名

1.9 $1~$n

  添加到Shell的各参数值。$1是第1参数、$2是第2参数…。

2. 示例代码

#!/bin/sh

echo  $$

echo  $!

echo  $?

echo  $-

echo  $#

echo  $*
echo "$*" echo $@
echo "$@" echo $ echo $ echo $

运行结果:

随机推荐

  1. xpath下载

    1.下载地址,版本号为 2.0.2: 链接: https://pan.baidu.com/s/1GXPm1kMENXhOkefKcEQnlA 密码: 8wwv 2.安装 1).在chrome右上角找到 ...

  2. sql的关键字

    整理一下sql的关键字,一直都在用,只是很少去整理,所以今天简单整理一下,主要是整理CRUD的一些关键字. 写在前面:sql 不区分大小写 select 简单查询语句 select columnNam ...

  3. ReadWriteLock读写之间互斥吗

    开发中遇到并发的问题一般会用到锁,Synchronized存在明显的一个性能问题就是读与读之间互斥:ReadWriteLock是JDK5中提供的读写分离锁.读写分离锁可以有效地帮助减少锁竞争,以提升系 ...

  4. 实现表单label两端对齐

    主要使用css3属性 text-align: justify; text-align-last: justify; 上代码: <ul> <li> <label class ...

  5. Unexpected console statement (no-console)

    在vue cli项目中用consloe.log()打印,启动项目报错 export default { name: 'app', components: { }, created() { this.t ...

  6. php底层的运行机制和原理

    php设计的理念及特点 PHP 被设计为一种适用于web开发的动态脚本语言,同时具有解释型和弱类型,底层完全由C语言实现. 解释型即程序边运行边解释,一行一行运行. 弱类型即变量类型一开始并不是确定的 ...

  7. collections:内建模块,提供额外的集合类

    介绍 collections里面包含了很多除了内置类型之外的数据类型,我们使用它们有时可以很方便的完成一系列操作 ChainMap:搜索多个字典 from collections import Cha ...

  8. 3.Minst数据集分类

    import numpy as np from keras.datasets import mnist from keras.utils import np_utils from keras.mode ...

  9. sscanf功能详解(转)

    在处理字符串的程序当中,经常会分析字符串,从一大长串的字符串截取我们需要的数据,这如果通过自己手写函数来分析,虽然可以,但当你知道sscanf的功能,那就自己写函数分析就显得多此一举. 这些函数的使用 ...

  10. Html中使用Cookie取值赋值

    //设置Cookie function setCookie(name, value) { var Days = 1; var exp = new Date(); exp.setTime(exp.get ...