20 shell 参数

所有参数列表。如"$@"用「"」括起来的情况、以"$1" "$2" … "$n" 的形式输出所有参数。$#
添加到Shell的参数个数$0
Shell本身的文件名$1~$n
添加到Shell的各参数值。$1是第1参数、$2是第2参数…。

我们先写一个简单的脚本,执行以后再解释各个变量的意义
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脚本的第二个参数
$@ 是传给脚本的所有参数的列表

其他特殊变量

$$:Shell本身的PID(ProcessID)
$! :Shell最后运行的后台Process的PID
$?:最后运行的命令的结束代码(返回值)
$-:使用Set命令设定的Flag一览

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 13,915评论 6 13
  • 一,shell题记 不懂shell的程序员不是好程序员,学习shell是为了自动化,使用自动化可以非常有效的提高工...
    架构师小秘圈阅读 12,776评论 3 70
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 14,250评论 2 33
  • 匆匆,太匆匆 我在人生跑道 和时间一起赛跑 岁月无情催人老 匆匆,太匆匆 我在人生跑道 和时间一起赛跑 当我离开母...
    秋AldrichB果阅读 3,043评论 8 18
  • 前两天去L先生的办公场所寻他聊产品,进了他办公室,这个办公室的占地比我原来在的公司8个人一起办公的地儿还大,沙发书...
    清热解毒陳槑槑阅读 3,989评论 2 7

友情链接更多精彩内容