Linux 于 shell 变数 $#,$@,$0,$1,$2 含义解释:

Linux 于 shell 变数 $#,$@,$0,$1,$2 含义解释:

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

变量说明:

$$        Shell自己PID(ProcessID) 
$!         Shell背景上次执行Process的PID 
$?         命令的结束代码(返回值) 
$-         使用Set命令设定的Flag一览 
$*         全部參数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出全部參数。 
$@         全部參数列表。如"$@"用「"」括起来的情况、以"$1" "$2" … "$n" 的形式输出全部參数。

$# 加入到Shell的參数个数 $0 Shell本身的文件名称 $1~$n 加入到Shell的各參数值。$1是第1參数、$2是第2參数…。

演示样例:

#!/bin/bash
#
printf "The complete list is %s\n" "$$"
printf "The complete list is %s\n" "$!"
printf "The complete list is %s\n" "$?"
printf "The complete list is %s\n" "$*"
printf "The complete list is %s\n" "$@"
printf "The complete list is %s\n" "$#"
printf "The complete list is %s\n" "$0"
printf "The complete list is %s\n" "$1"
printf "The complete list is %s\n" "$2"

结果:

[Aric@localhost ~]$ bash params.sh 123456 QQ
The complete list is 24249
The complete list is
The complete list is 0
The complete list is 123456 QQ
The complete list is 123456
The complete list is QQ
The complete list is 2
The complete list is params.sh
The complete list is 123456
The complete list is QQ

很多其它解释见以下文档
下载地址:http://www.tldp.org/LDP/abs/abs-guide.pdf

版权声明:本文博主原创文章。博客,未经同意不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116974.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • MMC卡修复心得与方法

    MMC卡修复心得与方法手机内存卡修复1.放存储卡在电脑识别.放到手机不识别!!这种情况往往是因为存储卡在电脑上进行格式化,但是格式化与手机不兼容.解决方法是吧卡放回手机,用手机中的”格式化存储卡”功能从新格式化!!2.手机提示”拔出存储卡,请按确定”按照提示将卡拔出来,一会再插入手机就可以继续使用,但是过不了多久有在回提示拔卡,如此反复!!这是因为经常插拔存储卡,导致手机存储卡槽松动接触不良.

    2022年6月1日
    32
  • 小技巧——防止系统出问题文件丢失

    为什么要进行数据备份,怕有一天数据你真的找不回来的时候,还有后悔药可以吃!有时候数据在你手上的时候你可能觉得它的价值不是很高,但是一旦你失去,你就会发现,它的重要性远远超过了你的想象!不犯错就不会成长,这次我一定要记住,让这种错误以后再也不要犯!重要的资料不要放到c盘!!! 不要放到桌面!!! 重要的资料不要放到c盘!!! 不要放到桌面!!!

    2022年2月25日
    44
  • 面试官:Java的重写和重载有什么区别?[通俗易懂]

    面试官:Java的重写和重载有什么区别?[通俗易懂]老读者都知道了,七年前,我从美女很多的苏州回到美女更多的洛阳(美化了),抱着一幅“从二线城市退居三线城市”的心态,投了不少简历,也“约谈”了不少面试官,但仅有两三个令我感到满意。其中有一位叫老马,至今还活在我的微信通讯录里。他当时扔了一个面试题把我砸懵了:“王二,Java的重写(Override)和重载(Overload)有什么区别?”那年我二十三岁,正值青春年华,大约就是周杰伦发布《八度空间…

    2022年9月10日
    3
  • 计算机网络基本知识汇总「建议收藏」

    计算机网络基本知识汇总「建议收藏」概述OSI分层(7层)物理层、数据链路层、网络层、运输层、会话层、表示层、应用层TCP/IP分层(4层)网络接口层、网络层、运输层、应用层五层协议(5层)物理层、数据链路层、网络层、运输层、应用层五层结构的概述应用层:通过应用进程间的交互来完成特定网络应用数据:报文协议:HTTP,SMTP(邮件),FTP(文件传送)运输层:向两个主机进程之间的通信提供通用的数据传输服务。

    2022年7月18日
    19
  • 基础工具之消息队列、线程池、缓冲区抽象、事件循环和日志实现

    正所谓“工欲善其事,必先利其器”,我们在实现通信设计任务的过程中需要一些基础工具来帮助我们搭建部分基础组件,这些基础工具包括消息队列,线程池,缓冲区抽象,事件循环和日志工具。接下来对这部分基础工具进

    2021年12月28日
    42
  • Java学习之IDEA调试快捷键

    Java学习之IDEA调试快捷键1、F7单步调试,进入函数内部2、F8单步调试,不进入函数内部3、Shift+F7选择要进入的函数4、Shift+F8跳出函数5、Alt+F9运行到

    2021年12月12日
    76

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号