shell if参数-v

shell if参数-v先说结论:if参数-v可用于判断变量是否存在,即该变量是否已定义示例代码如下#!bin/bash#targs=0#runsim=”if[-vtargs];thenif[-vrunsim];then echo”LayerONE”fiecho”LayerTWO”fiecho”LayerThree”直接运行结果为LayerThree将第二行注释去除后,即定义变量targs=0,在此运行该脚本,结果如下Laye

大家好,又见面了,我是你们的朋友全栈君。

if参数-v可用于判断变量是否存在,即该变量是否已定义
示例代码如下

#!bin/bash
# targs=0
# runsim=''
if [ -v targs ]; then
    if [ -v runsim ]; then
    	echo "Layer ONE"
    fi
    echo "Layer TWO"
fi
echo "Layer Three"

直接运行结果为

Layer Three

将第二行注释去除后,即定义变量targs=0,在此运行该脚本,结果如下

Layer TWO
Layer Three

接下来去除第三行注释,运行得

Layer ONE
Layer TWO
Layer Three

结语:-v这个用法之前我也不知道,直到看了github上大佬脚本才发现这种用法,此处记录一下吧。

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

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

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


相关推荐

  • CDMA是什么网络类型_TD_LTE移动电话机

    CDMA是什么网络类型_TD_LTE移动电话机GSM全球移动通信系统(GlobalSystemforMobileCommunications),缩写为GSM,由欧洲电信标准组织ETSI制订的一个数字移动通信标准。它的空中接口采用时分多址技术。自90年代中期投入商用以来,被全球超过100个国家采用。GSM标准的无处不在使得在移动电话运营商之间签署”漫游协定”后用户的国际漫游变得很平常。GSM较之它以前的标准最大的不同是它的信令和语音信道都是数字式的,因此GSM被看作是第二代(2G)移动电话系统。GSM系统主要由移动台…

    2022年10月3日
    0
  • PyCharm与Python的安装教程2021.11

    PyCharm与Python的安装教程2021.11文章预览:一、进入官网下载PyCharm安装包二、等待下载完成后点击进行安装三、Python安装(只介绍最新版本)四、第一个PyCharm程序五、PyCharm安装第三方库方法一、进入官网下载PyCharm安装包自行进入PyCharm官网或点击https://www.jetbrains.com/pycharm/download/#section=windows下载的是社区版,免费并且足够使用。二、等待下载完成后点击进行安装1.点击next2.选择自己要安装的目录3.勾选一些设定(1

    2022年8月28日
    4
  • 0xc0000225无法进系统_Win10无法开机0xc0000225错误代码解决方法

    0xc0000225无法进系统_Win10无法开机0xc0000225错误代码解决方法早在使用Win7系统的时候我们就会遇到0xc0000225错误无法开机的问题,而在Win10系统的使用中,同样很多小伙伴也遇到了该错误,那么这时我们要怎么解决呢?下面小编就和大家分享下Win10无法开机0xc0000225错误代码的原因和解决方法。出现0xc0000225错误的原因:出现错误代码0xc0000225,表示Windows无法找到用于引导的BCD(引导配置数据)文件。如果您的系统文…

    2022年6月26日
    37
  • 在dos中发现一个分区表_dos dir命令

    在dos中发现一个分区表_dos dir命令下面以我所使用的电脑硬盘为例来分析0号扇区,看看MBR中的表项包含了多少信息,是什么意思。由前面的分析我们知道00~1BD的446个字节为引导代码,所以我们重点关注分区表项。即1BD~1FD,这个64个字节。为了方便起见,这里将分区表一列表的形式展现出来,由于CHS现几乎不再使用了,所以我们只提取了LBA参数。分区表值表项号引导标志分区类型值起始扇区

    2025年5月30日
    0
  • SpringBoot启动一下就停止了_win10安装boot运行失误

    SpringBoot启动一下就停止了_win10安装boot运行失误springboot启动失败原因:本文想做一个系统管理,在springboot下进行开发,但是提交代码时出现启动失败,上网搜索发现各种原因主要包括:1说@EnableAutoConfiguration注解没加.2说@SpringBootApplication注解没加3说springboot-中包含tomcat疑问,删除maven依赖,重新下载解决’4说spring-boot-starter-parent依赖冲突,删除一个即可5说启动类要和项目在同一级下

    2022年9月9日
    0
  • Fluter 学习笔记 之 Dart 语言入门

    Fluter 学习笔记 之 Dart 语言入门基本类型var可以定义变量,如vartag=”666″,这和JS、Kotlin等语言类似,同时Dart属于动态类型语言,支持闭包。Dart中number类型分为int和double,其中java中的long对应的也是Dart中的int类型。Dart中没有float类型。Dart下只有bool型可以用于if等判断,不…

    2025年5月26日
    0

发表回复

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

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