Linux中的$0、$1、$@、$?、$*等特殊变量介绍

2023-11-12

特殊变量

$# 是传给脚本的参数个数
$0 是脚本本身的名字
$1 是传递给该shell脚本的第一个参数
$2 是传递给该shell脚本的第二个参数
$@ 是传给脚本的所有参数的列表
$* 是以一个单字符串显示所有向脚本传递的参数,与位置变量不同,参数可超过9个
$$ 是脚本运行的当前进程ID号
$? 是显示最后命令的退出状态,0表示没有错误,其他表示有错误

例子

#$0 就是你写的shell脚本本身的名字,
#$1 是你给你写的shell脚本传的第一个参数,
#$2 是你给你写的shell脚本传的第二个参数

比如你新建了一个shell脚本 Test.sh, 内容如下:

#!/bin/sh
echo “shell脚本本身的名字: $0”
echo “传给shell的第一个参数: $1”
echo “传给shell的第二个参数: $2”

#保存退出后,你在Test.sh所在的目录下输入 bash Test.sh 1 2

结果为:

shell脚本本身的名字: Test.sh
传给shell的第一个参数: 1
传给shell的第二个参数: 2

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Linux中的$0、$1、$@、$?、$*等特殊变量介绍 的相关文章

  • 将 bash 提示符下的当前命令复制到剪贴板

    我想要一个快速的键盘命令序列 将 bash 提示符处的当前命令复制到剪贴板 例如 要将最后一个 bash 命令复制到剪贴板 我会按 up some command sequence 复制它 或者 例如 要在 bash 历史记录中搜索命令 我
  • Java时区混乱

    我正在运行 Tomcat 应用程序 并且需要显示一些时间值 不幸的是 时间快到了 还有一个小时的休息时间 我调查了一下 发现我的默认时区被设置为 sun util calendar ZoneInfo id GMT 08 00 offset
  • 从预提交挂钩中排除某些文件类型

    我想要一个预提交 git 钩子来检查 如果可能的话 自动删除 尾随空格 In 让 git 在提交之前自动删除尾随空格 https stackoverflow com questions 591923 make git automatical
  • 为什么无论 -rdynamic 如何,backtrace 都不包含 Objective-C 符号?

    Update 我正在 Linux 上使用 GNU 运行时 问题是not发生在带有 Apple 运行时的 MacOS 上 更新2 我在 MacOS 上编译了 GNU 运行时并用它构建了示例 该错误确实not发生在带有 GNU 运行时的 Mac
  • 为什么使用signalfd无法捕获SIGSEGV?

    我的系统是ubuntu 12 04 我将示例修改为man 2 signalfd 并添加sigaddset mask SIGSEGV 在示例中 但我无法得到输出SIGSEGV被生成 这是一个错误吗glibc 源代码片段如下 sigemptys
  • 当在 python linux 中执行命令 os.system() 时,在 python 中给出响应 yes/no

    考虑一个像这样的命令 yum install boto 当我在终端中执行时 要继续 会询问我是 否 我可以像这样用 python 回应它吗 os system yum install boto Next Yes 将通过相同的 python
  • 使用 sed 将反斜杠替换为斜杠[重复]

    这个问题在这里已经有答案了 我需要更换 with 我有一个文件 其中包含 test test2 test3 test4 I tried VRS Ruta cat ruta lst sed s g sed s g output test te
  • 命名互斥体的 Mono 替代方案

    在 Windows NET 上 命名的互斥体可用于同步多个进程 不幸的是 Mono 在 Linux 上不太支持这一点 他们的发行说明 http www mono project com Release Notes Mono 2 8 Shar
  • 无法连接到 Azure Ubuntu VM - 公钥被拒绝

    我们在 Azure 上使用 Ubuntu VM 一段时间了 很少遇到任何问题 然而 其中一台虚拟机最近出现了问题 出乎意料的是 Ubuntu VM 开始拒绝公钥 ssh i azure key email protected cdn cgi
  • Linux 中有没有一种轻量级的方法来获取当前进程数?

    我希望我的 基于 C C 的 程序显示一个数字指示器 指示本地系统上当前有多少个进程 将经常查询正在运行的进程数值 例如每秒一次 以更新我的显示 有没有一种轻量级的方法来获取该数字 显然我可以调用 ps ax wc l 但我不想强迫计算机生
  • Linux 中的 Windows NAmed Pipes 替代品

    我们正在将现有的 Windows 代码移植到 Linux 我们使用 ACE 作为抽象层 我们使用 Windows 命名管道与多个客户端进行通信并执行重叠操作 linux 下这个相当于什么 我检查了linux命名管道 FIFO 但它们似乎只支
  • 虚拟内存澄清——大连续内存的分配

    我有一个应用程序 我必须在 Windows 上分配 使用运算符 new 相当大的内存空间 数百 MB 该应用程序是 32 位 我们现在不使用 64 位 即使在 64 位系统上也是如此 我启用了 LARGEADDRESSAWARE 链接器选项
  • Xcode 方案预操作脚本未运行

    点击构建 构建日志中不会打印任何内容 是什么赋予了 Xcode 版本 8 2 1 8C1002 预操作发生在构建之前 因此输出不会进入构建日志 而是进入 stdErr 您可以将输出复制到文件中 exec gt PROJECT DIR pre
  • 使用 .htaccess 启用 PHP 短标签

    我在自己的 Centos 服务器上设置了 Apache 并具有多个虚拟 Web 服务器 并且我希望仅为位于以下位置的其中一个 Web 服务器启用 PHP 短标记 var www ostickets html 我可以通过添加成功启用短标签sh
  • 在 Windows / Linux 中创建 Mac 包

    我自己努力制作一个 r 包 我按照 stackoverflow 中上一个问题的说明进行操作如何为外行开发软件包 http cran r project org bin windows Rtools 以下是我根据上一个问题采取的步骤 在新的
  • Flex 的远程版本误解了我的规则

    我使用 flex 和 bison 编写了一个小汇编程序 可以在我的机器 ubuntu 10 10 上构建并运行正常 现在其他人正在尝试在 arch linux 上构建它 并且他们安装的 flex 产生了不同的 lex yy c 这是不匹配的
  • sudo pip install python-Levenshtein 失败,错误代码 1

    我正在尝试在 Linux 上安装 python Levenshtein 库 但每当我尝试通过以下方式安装它时 sudo pip install python Levenshtein 我收到此错误 命令 usr bin python c 导入
  • PHP 日志文件颜色

    我正在编写一个 PHP 日志文件类 但我想为写入文件的行添加颜色 我遇到的问题是颜色也会改变终端的颜色 我想要实现的是仅更改写入日志文件的行的颜色 class logClass extends Singleton private funct
  • 水银大号

    你知道如何让 Quicksilver 在屏幕上显示大量的大字体吗 通过点击 然后输入自由文本 选择 操作 下的 查看大字体 并按 Enter 键 好吧 有谁知道一种以编程方式做到这一点的方法吗 另外 quicksilver 是必需的还是内置
  • 在 MacO 和 Linux 上安装 win32com [重复]

    这个问题在这里已经有答案了 我的问题很简单 我可以安装吗win32com蟒蛇API pywin32特别是 在非 Windows 操作系统上 我一直在Mac上尝试多个版本pip install pywin32 都失败了 下面是一个例子 如果你

随机推荐

  • 【Java】阿里巴巴Java开发手册

    文章目录 前言 一 编程规约 一 命名风格 二 常量定义 三 代码格式 四 OOP 规约 五 集合处理 六 并发处理 八 注释规约 九 其它 二 异常日志 一 异常处理 二 日志规约 三 单元测试 四 安全规约 五 MySQL 数据库 一
  • 服务器无限矿场,深度揭秘人人矿场是如何实现分布式全网算力超600PiB?

    原标题 深度揭秘人人矿场是如何实现分布式全网算力超600PiB Filecoin的封装 指的是将原始数据 订单数据或垃圾数据 经过特定的算法进行反复计算 加密 生成符合Filecoin格式的有效扇区 并将有效扇区最终写入存储进行保存 需要注
  • 神经网络参数的计算

    在神经网络中参数量如何计算呢 卷积层 参数量 核高 times 核宽 times 核通道数
  • wms软件和ERP系统有何不同?

    wms仓库管理系统和ERP仓库管理系统有哪些区别 打个比喻 wms软件好比仓库主管 必须重视对过程中的人 机 料 法 环进行全面管理 而ERP系统就像是仓库经理 会重点关注进销存 wms软件和ERP系统有何不同 wms软件和ERP系统有何不
  • android okgo的使用及简单封装,同时配合Gson传参和返回数据解析

    闲来无事 把网络框架okgo简单的封装了一下 其实这种方法比较简单 步骤如下 1 导入依赖 一般网络请求基本会用到okgo和gosn compile com lzy net okgo 2 0 0 compile com google cod
  • LaTex 点乘,叉乘,点除,分数等常用算法

    点乘 a cdot b 叉乘 a times b 点除 a div b 分数 frac a b 待续
  • AI崛起,剑指终极对决!第二届广州·琶洲算法大赛复赛结果出炉

    广州市人民政府主办 海珠区人民政府 广州市科学技术局 广州市工业和信息化局 广州市政务服务数据管理局 琶洲实验室与北京百度网讯科技有限公司共同承办的 第二届广州 琶洲算法大赛 于2023年4月25日正式启动 共吸引了来自21个国家的国内外3
  • kibana集成内部账号_nginx和kibana/es集成

    利用elk搞了一个日志平台 随着日志越来越多 使用的人反应kibana上查询比较慢 kibana虽然有日志 但记录的信息不全 无法分析到底是什么样的查询比较慢 因此考虑在kibana和elk之间加一个nginx 主要作用有两个 1 记录ki
  • 树的广度遍历

    在二叉树的遍历当中 有一种遍历方法是不常见的 那就是广度遍历 和其他三种遍历方法不同 二叉树的广度遍历需要额外的数据结构来帮助一下 什么数据结构呢 那就是队列 因为队列具有先进先出的特点 这个特点要求我们在遍历新的一层数据之前 必须对上一次
  • java Integer类型比较

    在比较两个new的Integer对象时 不能直接使用 这里比较的是对象的地址 应该调用 equals 方法 Integer i new Integer 888 Integer j new Integer 888 System out pri
  • uniapp 中使用jssdk正确姿势

    这是基于企业项目实战分享 npm方式使用下方进行安装 npm install jweixin module save 安装在项目中的效果如图 接下自己定义个js 引入我们用npm引入的模块 jwx 代码 let jweixin requir
  • html总结

  • 两个常用的数据标准化方法及Matlab和Python实现

    参考 数据归一化和两种常用的归一化方法 博主对原文进行了润色并添加了Matlab和Python实现 数据标准化处理是数据挖掘的一项基础工作 不同评价指标往往具有不同的量纲和量纲单位 这样的情况会影响到数据分析的结果 为了消除指标 特征 之间
  • 【Linux_】环境变量

    Linux 环境变量 心有所向 日复一日 必有精进 专栏 Linux 作者 沂沐沐 目录 Linux 环境变量 什么是环境变量 常见变量 查看环境变量方法 环境变量相关的命令 通过系统调用获取或设置环境变量 环境变量通常是具有全局属性的 导
  • Javascript设计模式-17-装饰者模式

    Javascript 设计模式 17 装饰者模式 简介 装饰者模式可以动态的给某个对象添加一些额外的职责 而不会影响从这个类中派生出的其他对象 优势 传统的面向对象语言中 给对象添加功能常常使用继承的方式 但是继承的方式并不灵活 还会带来许
  • C语言 操作符详解 上

    C语言中操作符介绍 表达式求值 操作符分类 1 算数操作符 2 移位操作符 lt lt gt gt 3 位操作符 4 赋值操作符 5 单目操作符 sizeof 6 关系操作符 gt lt gt lt 7 逻辑操作符 8 条件操作符 9 逗号
  • Swagger与Knife4j学习笔记

    Swagger 介绍 在前后端分离开发的过程中 前端和后端需要进行 API 对接进行交互 就需要一个 API 规范文档 方便前后端的交互 但 API 文档不能根据代码的变化发生实时动态的改变 这样后端修改了接口 前端不能及时获取最新的接口
  • 百度搜索自动补全(百度搜索常见api)

    一 百度搜索常用api 百度搜索常用api 一 搜索关键字自动补全 一 数据源 https sp0 baidu com 5a1Fazu8AA54nxGko9WTAnF6hhy su wd 关键词 json 1 二 代码 可以使用前端插件 B
  • DDT数据驱动+yaml/csv(自动化测试,接口测试)

    目录 1 ddt读取yaml文件 2 ddt读取csv文件 3 ddt式测试报告怎么填用例描述 背景 对于输入框来言 使用等价类边界值 场景法等进行数据输入 接口相同 输入的内容都非常相似 却有不同的响应结果 如果我们对于每次输入都编写一条
  • Linux中的$0、$1、$@、$?、$*等特殊变量介绍

    特殊变量 是传给脚本的参数个数 0 是脚本本身的名字 1 是传递给该shell脚本的第一个参数 2 是传递给该shell脚本的第二个参数 是传给脚本的所有参数的列表 是以一个单字符串显示所有向脚本传递的参数 与位置变量不同 参数可超过9个