【参考文章】: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. 帝国cms列表内容模板加上数字编号

    /*这个[!--no.num--]指的是信息编号.每次增加1*/ <li data-eq="[!--no.num--]"> <div class="ti ...

  2. angular实现对百度天气api跨域请求

    申请秘钥:http://lbsyun.baidu.com/apiconsole/key  ,有个百度账号就行ak=开发者秘钥 url地址  :http://api.map.baidu.com/tele ...

  3. 【1】Zookeeper概述

    一.前言 在"网络是不可靠的"这一前提下,分布式系统开发需要解决如下四个问题: 客户端如何访问众多服务?  解决方案:服务聚合,使用API网关 服务于服务之间如何通信?  解决方案 ...

  4. dedecms 上传目录路径

    DedeCms已经升级到5.7版本了..可惜附件的目录还是不统一,比如我们从后台把附件目录调整为Ym(默认为Ymd)然而我们的附件路径依然是不一样的比如:Ymd代表年月日从文章里上传路径为:/Ym/1 ...

  5. php使用rdkafka进行消费

    如仅作为消费者或生产者,直接使用下面消费者或生产者的代码,并安装扩展即可. PHP要安装rdkafka扩展,而rdkafka又依赖librdkafka,因此你需要安装rdkafka和librdkafk ...

  6. java_day09_GUI事件

    第九章:GUI事件 1.AWT事件模型概述 使用AWT或者Swing中的容器.组件和布局管理器就可以构建出图形界面,但是这时候该界面还并不能和用户进行交换,因为图形界面中的组件还没有添加事件监听器,所 ...

  7. odoo 常用模型的简写

    <act_window>是窗口操作模型ir.actions.act_window <menuitem>是菜单项模型ir.ui.menu <report>是报表操作模 ...

  8. onItemSelected 获取选中的 信息 3种方法

    @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) ...

  9. linux基础—课堂随笔09_数组

    数组:(6.14 第一节) 取分区利用率,大于百分之八十则发出警报 取分区第一列 取分区使用率: 脚本: 检查脚本语法: ——end 数组切片: 1.跳过前两个取后面 2.跳过前两个取三个 生成10个 ...

  10. spring JdbcTemplate如何返回多个结果集

    最近很少发博客,先是去了***公司呆了几年,完全不能上外网,后来又出来了,能上外网了,但项目太忙一直在打码,用的语言也从C#换成了JAVA. 好在两者比较相似,转起来还算方便,近日在操作sqlserv ...