博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
发现linux shell中$0,$?,$!等的特殊用法
阅读量:5262 次
发布时间:2019-06-14

本文共 734 字,大约阅读时间需要 2 分钟。

记录下linux shell下的特殊用法及参数的说明

变量说明:

$$ 

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脚本的第二个参数 
$@ 是传给脚本的所有参数的列表

转载于:https://www.cnblogs.com/zhangchao0515/p/9773491.html

你可能感兴趣的文章
009.栈实现队列
查看>>
A-Softmax的总结及与L-Softmax的对比——SphereFace
查看>>
关于软件盘覆盖住布局
查看>>
Unity3D 控制物体移动、旋转、缩放
查看>>
UVa 11059 最大乘积
查看>>
UVa 12545 比特变换器
查看>>
数组分割问题求两个子数组的和差值的小
查看>>
10个著名的思想实验1
查看>>
composer 报 zlib_decode(): data error
查看>>
linux下WPS的使用
查看>>
java 中 finally里面写了return 会发生什么?
查看>>
Web Api 利用 cors 实现跨域
查看>>
hdu 3938 并查集
查看>>
instanceof
查看>>
BZOJ 题目1036: [ZJOI2008]树的统计Count(Link Cut Tree,改动点权求两个最大值和最大值)...
查看>>
《深入分析Java Web技术内幕》读书笔记之JVM内存管理
查看>>
python之GIL release (I/O open(file) socket time.sleep)
查看>>
2015/8/4 告别飞思卡尔,抛下包袱上路
查看>>
软件开发与模型
查看>>
161017、SQL必备知识点
查看>>