Linux中变量#,#,@,0,0,1,2,2,*,$$,$?的含义
来源:互联网 发布:淘宝话费充值利润 编辑:程序博客网 时间:2024/05/21 22:50
转载地址:http://www.cnblogs.com/kaituorensheng/p/4002697.html
Linux中变量#,#,@,0, 0,1,2, 2,*,$$,$?的含义
1
2
3
4
5
6
7
8
$# 是传给脚本的参数个数
$
0
是脚本本身的名字
$
1
是传递给该shell脚本的第一个参数
$
2
是传递给该shell脚本的第二个参数
$@ 是传给脚本的所有参数的列表
$* 是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过
9
个
$$ 是脚本运行的当前进程ID号
$? 是显示最后命令的退出状态,
0
表示没有错误,其他表示有错误
区别:
- 相同点:都是引用所有参数
- 不同点:只有在双引号中体现出来。假设在脚本运行时写了三个参数(分别存储在
1 123)则" 3)则"*" 等价于 “1 123"(传递了一个参数);而“ 3"(传递了一个参数);而“@" 等价于 "1"" 1""2" "$3"(传递了三个参数)
例子一
##dels.sh
echo "number:$#"echo "scname:$0"echo "first :$1"echo "second:$2"echo "argume:$@"echo "show parm list:$*"echo "show process id:$$"echo "show precomm stat: $?"
执行结果
1
2
3
4
5
6
7
8
9
[@jihite]$ sh del.sh
1
2
3
number:
3
scname:del.sh
first:
1
second:
2
argume:
1
2
3
show
parm list:
1
2
3
show
process id:
21057
show
precomm stat:
0
例子二
#!/bin/shnum=$#name=$0echo "number:$num"echo "scname:$name"echo $0echo $1echo $2for ((i=0; i<$num; i++))do echo "$i"doneecho "argume:$@"for key in $@do echo $keydoneecho "-----------------"for key in "$@"do echo $keydoneecho "-----------------------------"for key2 in $*do echo $key2doneecho "-----------------"for key2 in "$*"do echo $key2doneecho "show process id:$$"choecho "show precomm stat: $?"
执行结果
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
[@jihite]$ sh del.sh a b
number:
2
scname:del.sh
del.sh
a
b
0
1
argume:a b
a
b
-----------------
a
b
-----------------------------
a
b
-----------------
a b
show
process id:
23582
del.sh: line
37:
cho: command not found
show
precomm stat:
127
0 0
- Linux中变量#,#,@,0,0,1,2,2,*,$$,$?的含义
- Linux中变量#,#,@,0,0,1,2,2,*,$$,$?的含义
- Linux中变量#,#,@,0,0,1,2,2,*,$$,$?的含义
- Linux中变量#,#,@,0,0,1,2,2,*,$$,$?的含义
- Linux中变量#,#,@,0,0,1,2,2,*,$$,$?的含义
- Linux中变量#,#,@,0,0,1,2,2,*,$$,$?的含义
- Linux中变量#,#,@,0,0,1,2,2,*,$$,$?的含义
- Linux中变量#,#,@,0,0,1,2,2,*,$$,$?的含义
- Linux中变量$#,$@,$0,$1,$2的含义
- Linux中变量$#,$@,$0,$1,$2的含义
- Linux中变量$#,$@,$0,$1,$2的含义
- linux中shell变量$#,$@,$0,$1,$2的含义解释
- Linux中变量$#,$@,$0,$1,$2的含义
- linux中shell变量$#,$@,$0,$1,$2的含义解释:
- linux中shell变量$#,$@,$0,$1,$2的含义解释
- linux中shell变量$#,$@,$0,$1,$2的含义解释
- linux中shell变量$#,$@,$0,$1,$2的含义解释
- linux中shell变量$#,$@,$0,$1,$2的含义解释
- Am命令用法
- IOS学习之——UItouch的相关使用
- 山东省第五届ACM省赛题——Weighted Median(模拟)
- Android初学习 - Service 中的 onStart 和 onStartCommand
- unity 实现流光效果
- Linux中变量#,#,@,0,0,1,2,2,*,$$,$?的含义
- dpi 、 dip 、分辨率、屏幕尺寸、px、density 关系以及换算
- FLash Ram 的区别
- MUI中的accordion(折叠面板)
- NAT穿透的详解及分析(NAT类型举例解释及穿透技术)
- Pm命令用法
- cvO2O的本质:形成闭环
- c++知识总结
- GEEK学习笔记— —程序员面试宝典笔记(二)