特殊变量笔记2

案例需求

在demo4.sh中循环打印输出所有输入参数, 体验$*$@的区别

实现步骤

编辑demo4.sh脚本文件

# 增加命令: 实现直接输出所有输入后参数
# 增加命令: 使用循环打印输出所有输入参数

演示

  1. 编辑demo4.sh文件

    外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  2. 直接输出所有输入参数, 与循环方式输出所有输入参数(使用双引号包含 $*$@ )

    #!/bin/bash
    # 命令1: 打印当前脚本文件名字
    echo "当前脚本文件名称:$0"# 命令2: 打印第1个输入参数
    echo "第一个输入参数:$1"# 命令3: 打印第2个输入参数
    echo "第二个输入参数:$2"# 命令4: 打印第10个输入参数
    echo "第十个输入参数不带花括号获取:$10"
    echo "第十个输入参数带花括号获取:${10}"# 命令5 打印所有输入参数的个数
    echo "所有输入参数个数:${#}"# 增加命令: 实现直接输出所有输入后参数
    echo '使用$*直接输出:'$*
    echo '使用$@直接输出:'$@# 增加命令: 使用循环打印输出所有输入参数
    echo '循环遍历输出$*所有参数'
    for item in "$*"
    doecho $item
    done
    echo '循环遍历输出$@所有参数'
    for item in "$@"
    doecho $item
    done
    
  3. 运行观察区别

    外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

特殊变量:$?

语法

$?

含义

用于获取上一个Shell命令的退出状态码, 或者是函数的返回值

每个Shell命令的执行都有一个返回值, 这个返回值用于说明命令执行是否成功

一般来说, 返回0代表命令执行成功, 非0代表执行失败

演示

输入一个正确命令, 再输出$?

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/840579.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

软件工程基础知识

一、软件工程概述 二、软件开发模型 三、软件开发方法 四、需求分析 五、系统设计 六、系统测试 七、软件开发项目管理 八、软件质量 九、软件度量

腾讯云COS上传文件出现的问题

1、没有配置 ObjectMetadata 的文件长度 腾讯云COS上传文件出现数据损坏问题_no content length specified for stream data. strea-CSDN博客 2、 使用 FileInputStream使用完没有及时关闭导致报错 ClientAbortException: java.nio.channels.ClosedChannelException 添加…

滑动谜题 leetcode的BFS题目 启发如何写一个拼图编程呢

题目链接 题目要求,要将上面的拼板拼成123450 首先,转换为字符串,为什么要转换为字符串呢,因为处理会变得很简单比如示例一,转化为字符串是12345,目标字符串为123450,只需要证明通过某种交换&a…

AI爆文写作:或许开放性的标题,才会更让人想点开了解答案

这是新华社公众号的一条推文 从信息传递上来说,新闻标题应该直接,包含关键信息。 但这个标题,却没有直接点名哪个国家,要点进去才能看到。 这就是要让人点开的标题特征,标题没有提供完整信息,是开放性的…

Apache Hive 安装与配置的详细教程

1. Hive简介 Hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制。hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,能…

infoq读书笔记-Davide Taibi博士-花8年转型微服务却得不到回报,问题出在哪 儿?

InfoQ:您的论文“On the Definition of Microservice Bad Smells”涉及非常多的微服务不良做法,但如果要用几个大类别来列举危害性比较大的微服务反模式,您认为会是哪几类?另外,您能再大概分析说明下造成这个几个反模式…

产品经理-产品设计规范(六)

1. 设计规范 2. 七大定律 2.1 菲茨定律 2.1.1 概念 2.1.2 理解 2.1.3 启示 按钮等可点击对象需要合理的大小尺寸根据用户使用习惯合理设计按钮的相对和绝对位置屏幕的边和角很适合放置像菜单栏和按钮这样的元素 2.1.4 参考使用手机习惯 2.1.5 案例 2.2 席克定律 2.2.1 概念 …

XShell-连接-Centos 7

XShell 连接Centos 7 一.准备 安装XShell XShell下载地址: 在虚拟机上安装Centos 7,具体操作自行学习 二.Centos 7的准备 1.网络适配器修改为NAT 2.获取IP 输入命令: ip addr我的Centos 7对外IP为192.168.174.129 三.XShell连接Cento…

【百度云千帆AppBuilder】诗词达人:AI引领的诗词文化之旅

文章目录 写在前面:百度云千帆AppBuilder诗词达人:AI引领的诗词文化之旅功能介绍:诗词达人智能体的深度体验1. 诗词接龙学习2. 诗词深度解析3. 互动式问答4. 诗词创作辅助 技术特点详解:"诗词达人"智能体的创新技术零代…

项目9-网页聊天室8(消息的发送和接收之websocket)

这是整个项目最最核心的部分. 但是这个部分的编写,需要依赖"基础设施" 包括不限于前面已经实现的 主界面,用户管理,会话管理, 好友管理, 消息管理 等等.... 发送消息,和接收消息,需要"实时传输 张三 发了一条消息,李四 这边立即就能接收到, 这样的…

【游戏引擎】Unity脚本基础 开启游戏开发之旅

持续更新。。。。。。。。。。。。。。。 【游戏引擎】Unity脚本基础 Unity脚本基础C#语言简介C#基础 Unity脚本基础创建和附加脚本MonoBehaviour生命周期生命周期方法 示例脚本 Unity特有的API常用Unity API 实践示例:制作一个简单的移动脚本步骤1:创建…

口碑比较好的相亲交友平台有哪些?正规靠谱的相亲软件排行榜测评

在网络时代,越来越多的人热衷于使用相亲交友软件来寻找生命中的另一半。这些软件确实为许多用户提供了真实可靠的交友平台。然而,市面上的相亲软件种类繁多,质量良莠不齐,让人难以选择。今天,我将介绍几款我使用过且认…

并发编程:ScheduledThreadPoolExecutor你真的了解吗?

前言 首先看到标题,我们其实很多人都知道,但是呢 在实际项目中我们面对很多延迟任务实现方案有很多选择,甚至直接在网上百度反正都能实现就行,但是忽略了很多细节,导致生产上的事故,都是因为没有真正了解到…

Git时光机、Git标签、Git分支、GitHub协作

Git时光机(切换版本) 1.查看提交历史 HEAD指针指向这次分支的最后一次提交 版本信息一行显示【git log --prettyoneline】 2.引用日志【git reflog】 (只在自己的工作区中存在) 非常重要:当HEAD指针进行切换之后&…

重学java 43.多线程 多等待多唤醒案例

Fear never builds the future,but hope does. —— 24.5.25 多等待多唤醒问题 在多条线程同时消费同时等待时,会出现问题 BaoZiPu package S77ThreadMoreWait;/*count和flag可以定义成包装类,但要记得给count和flag手动赋值不然对于本案例来说&#xff…

python低阶基础100题(上册)

** python低阶基础100题(上册) ** 1. 请打印出字符串 Hello World print("Hello World")2. 请打印出字符串 爸爸妈妈,你们辛苦啦 print("爸爸妈妈,你们辛苦啦")3. 请打印出字符串 人生苦短,我…

SVN创建分支,分支合并,切换分支。通俗易懂

1、首先在svnbucket.com远程仓库上创建项目,这里我创建了个测试demo: 2、先把svn仓库的项目检出到自己的文件夹,我这里是demo001文件夹,此时并没有创建truck, branches, tags这三个目录: 3、 在demo001文件夹里新建tru…

vue实战 ---- 社交媒体---黑马头条项目

vue基础 1.介绍 为什么会有Vuex ? ​ Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。 vuex是采用集中式管理组件依赖的共享数据的一个工具,可以解…

spring boot打的包直接运行

Spring Boot 提供了一个插件 spring-boot-maven-plugin 把程序打包成一个可执行的jar包&#xff0c;直接执行java -jar xxx.jar即可以启动程序 1、引用 spring-boot-maven-plugin插件 <build><plugins><plugin><groupId>org.springframework.boot<…

Hive安装教程

前置条件:hadoop&mysql docker容器安装mysql-CSDN博客 以下的/opt/bigdata目录根据自己实际情况更改 1.上传hive包并解压 tar -zxvf apache-hive-3.1.3-bin.tar.gz -C /opt/bigdata/ 2.修改路径 mv /opt/bigdata/apache-hive-3.1.3-bin/ hive cd /opt/bigdata/hive/…