linux shell 常用参数 $? $# 等等解析
2024-04-03 17:09:12
最近在学Linux脚本程序,这里来说说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 是脚本本身的名字
最新文章
- 英国JIC院士组3.8万英镑招博后-植物代谢物与微生物组-截止6月27日
- python下载安装教程3.8.0-Python3.8.0
- ASP.NET中MVC默认模板的项目结构
- 大众点评app 数据解密和反序列化
- Android获取设备已安装的应用
- 开源程序识别图像像素点_开源浏览器扩展程序,可放大图像
- SCP使用技巧-递归排除文件
- 2021年淮南高考成绩查询,2021年淮南高考最高分多少分,历年淮南高考状元
- 读书笔记-《 我的成功可以复制》四
- 在Vmware安装wes 7
- 婚礼邀请函微信小程序
- Python实现Mean Shift聚类算法
- Shopee平台如何实现多店铺管理?虾扑erp实现智能管理!
- 乐鑫Esp32学习之旅 12 开源一个微信公众号airkiss配网esp32以及局域网发现功能的工程,分享一个airkiss配网小工具。(附带Demo)
- linux自动断开会话,Linux系统SSH连接自动断开问题的解决方法
- vue + iview + less 定制主题色
- Kewail-短信接口接入流程
- 【Argoverse 1 Motion Forecasting Dataset】轨迹预测数据集简介
- 罗技无线鼠标响应缓慢
- 解决 i5 6500 安装黑苹果 Sierra 显卡不正常问题
热门文章
- Facts have proved that this is more popular than his article
- 题解 牛客【「水」悠悠碧波】
- 私钥、公钥、数字签名、数字证书、HTTPS
- URI、URL与URN【定义+联系】
- azure云数据库_Azure中的新弹性数据库
- 股债轮动策略之行业版
- python中filter(),reduce()函数
- 虚拟机安装---vm12+ubuntukylin16.04
- 【bzoj1604】[Usaco2008 Open]Cow Neighborhoods 奶牛的邻居 旋转坐标系+并查集+Treap/STL-set...
- python invalid start byte_Python 3.6中 'utf-8' codec can't decode byte invalid start byte?汗血宝马...