Shell $? $* $@ 等含义
$0 ------>脚本名
$1 ------>传入的第一个参数值
$? ------>脚本执行的结果。成功==0,不成功==非0
$* ------>所有参数的内容
$@ ------>所有参数的内容
$# ------>参数的数量
$$ ------>表示当前进程的进程号 希望打开一个进程后不再打开另一个
$! ------>表示后台运行的最后一个进程号
测试代码如下:
linux-:/install # cat .sh
#!/bin/sh
echo '$0 == ' $
echo '$1 == ' $
echo '$2 == ' $
echo '$? == ' $?
echo '$* == ' $*
echo '$@ == ' $@
echo '$# == ' $#
echo '$$ == ' $$
echo '$! == ' $! ps -ef | grep "2.sh"
测试结果打印如下:
linux-:/install # ./.sh
$ == ./.sh
$ ==
$ ==
$? ==
$* ==
$@ ==
$# ==
$$ ==
$! ==
root : pts/ :: /bin/sh ./.sh
root : pts/ :: grep .sh
参考了下别的资料,显示的是说 $* 和 $@ 的区别在于:
$*为"1 2 3"(一起被引号包住)
$@为"1" "2" "3"(分别被包住)
即$@可以当作数组来用
注:没实际使用过。待验证。 突然看到一个很详细的blog:
http://c.biancheng.net/cpp/view/2739.html
随机推荐
- Ajax跨域实现
Ajax Ajax,Asynchronus JavaScript and XML,字母意思:异步的 JavaScript 和 XML,是指一种创建交互式网页应用的网页开发技术.用于异步地去获取XML作 ...
- jquery Combo Select 下拉框可选可输入插件
Combo Select 是一款友好的 jQuery 下拉框插件,在 PC 浏览器上它能模拟一个简单漂亮的下拉框,在 iPad 等移动设备上又能回退到原生样式.Combo Select 能够对选项进行 ...
- 很不错的Intent用法 适用于正在开发的伙伴。自己看到了,也分享给大家吧。
本文介绍Android中Intent的各种常见作用. 1 Intent.ACTION_MAIN String: android.intent.action.MAIN 标识Activity为一个程序的开 ...
- document.domain
HTML DOM DOCUMENT 对象 定义和用法 domain 属性可返回下载当前文档的服务器域名. 语法 document.domain 说明 该属性是一个只读的字符串,包含了载入当前文档的 w ...
- 实例解析防抖动(Debouncing)和节流阀(Throttling)
http://outofmemory.cn/javascript/js-Debounce-throttle
- Redis Cluster 分区实现原理
Redis Cluster本身提供了自动将数据分散到Redis Cluster不同节点的能力,分区实现的关键点问题包括:如何将数据自动地打散到不同的节点,使得不同节点的存储数据相对均匀:如何保证客户端 ...
- centos7下使用yum安装mysql
CentOS7的yum源中默认好像是没有mysql的.为了解决这个问题,我们要先下载mysql的repo源. 1. 下载mysql的repo源 wget http://repo.mysql.com/m ...
- Html中的文本框和单选按钮
Html中的文本框和单选按钮用来制作页面的登录注册使用.. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN& ...
- MTK MT33xx型GPS的NMEA协议解析实例
1)解析实现 gps_main.c #include <nmea/nmea.h> #include <string.h> #include <stdio.h> #i ...
- Centos6.5下docker 环境搭建
一.运行docker Linux内核版本需要在3.8以上,针对centos6.5 内核为2.6的系统需要先升级内核.不然会特别卡,退出容器. 在yum的ELRepo源中,有mainline(3.13. ...