shell中$0,$?,$!等的特殊使用方法
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
随机推荐
- [Codeforces #211] Tutorial
Link: Codeforces #211 传送门 一套非常简单的题目,但很多细节都是错了一次才能发现啊…… 还是不能养成OJ依赖症,交之前先多想想corner case!!! A: 模拟,要特判0啊 ...
- poj 3464(Trie)Approximations
Approximations Time Limit: 2000MS Memory Limit: 131072K Total Submissions: 419 Accepted: 23 Desc ...
- 【二分答案+智障的字符串hash】BZOJ2946-[Poi2000]公共串(Ranklist倒一达成!!!!!)【含hash知识点】
[题目大意] 给出几个由小写字母构成的单词,求它们最长的公共子串的长度. [字符串hash的小笔记] hash[i]=(hash[i-1]*p+idx(s[i]))%mod,idx为映射值,一般a.. ...
- 求图的强连通分量--tarjan算法
一:tarjan算法详解 ◦思想: ◦ ◦做一遍DFS,用dfn[i]表示编号为i的节点在DFS过程中的访问序号(也可以叫做开始时间)用low[i]表示i节点DFS过程中i的下方节点所能到达的开始时间 ...
- [转]oracle 数据库、表空间、实例、服务之间的关系
1.每个DATABASE--可包含多个INSTANCE--每个INSTANCE可包含多个TABLESPACE和USER等(授予USER读写TABLESPACE的权限)--每个TABLESPACE可包含 ...
- [转] javax.servlet.jar - jar not loaded问题解决
把那个jsp-api.jarservlet-api.jar删除即可! Details:把 webapps\maintenance\WEB-INF\lib\ 下面的 servlet-api.jar 删掉 ...
- Visio中旋转文本框与箭头平行
如图想要让文本框和箭头平行,按住shift,可以画出水平或者垂直的线,线是斜的,用文本框来标识,要框和线平行,那可以这样做: 打开视图 - 任务窗格 - 大小和位置,然后先单击选中斜线 左下角倒数 ...
- 项目中简单使用ztree,简单数据。
由于公司架构较旧,使用的jdk版本为1.4,页面上也没有el表达式. 加入 js 文件 <% String context = request.getContextPath(); %> & ...
- #!/usr/bin/env在脚本中的作用
在linux的一些脚本,需在开头一行指定脚本的解释程序,如: #!/usr/bin/env bash #!/usr/bin/bash #!/usr/bin/env python 告诉操作系统执行这个 ...
- mac下如何全量删除短信内容
退出messages应用 执行命令:rm -r ~/Library/Messages/chat.* 重启messages 如果遇到下面问题:重启mac