shell变量替换技术实践与生产实践-创新互联

${value:-word}

公司主营业务:网站制作、成都网站设计、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联公司推出咸宁免费做网站回馈大家。

 如果变量名存在且非null,则返回变量的值,否则返回word字符串。

${value:=word}

如果变量名存在且非null,则返回变量的值,否则,设置这个变量值为word,并返回其值。

${value:?message}

如果变量名存在且非null,则返回变量的值,否则显示变量名;message,并退出当前的命令或者shell

范例: ${value:?"notdefined"} 如果value未定义,则显示-bash:value: not defined 并退出。

${value:+word}

如果变量名存在且非null,则返回word,否则返回null。

范例:${value:+word} 如果value已经定义,返回word(也就是真)

1、${value:-word}

当变量未定义或者值为空时候,返回值为word内容,否则返回变量的值

[root@PXE ~]# result=${cmz:-UNSET}#当cmz没有定义合作和是空会返回UNSET
[root@PXE ~]# echo $result
UNSET
[root@PXE ~]# echo $cmz

              ==>这里是空。

结论:当cmz没有内容时候就返回UNSET

[root@PXE ~]# cmz="caimengzhi"
[root@PXE ~]# result=${cmz:-UNSET} #之前必须声明cmz变量
[root@PXE ~]# echo $result
caimengzhi
结论:当cmz有内容时候就返回cmz的变量内容

这个变量功能可以解决工字符串问题,变量没有定义。

2、${value:=word}

[root@PXE ~]# result=${test:=UNSET}
[root@PXE ~]# echo $result
UNSET

[root@PXE ~]# echo $test
UNSET

3、${value:?"not defined"}

[root@PXE ~]# result=${lmt:? not defined}
-bash: lmt: not defined

4、${value-word}去掉冒号

也就是说当HTTPD不存在的时候将-后面的/usr/sbin/httpd赋值给等号前面的httpd

对变量的路径进行操作,最好先判断路径是不是非空特别是删除操作。

path=/server/backup

find ${path:=/tmp/} -name "*.tar.gz" -type f | xargs rrm - f

rm -rf ${path}

一下很重要

[root@PXE shell_scrpit]# vim d.sh
[root@PXE shell_scrpit]# sh -x d.sh
+ find /tmp/ -name '*.tar.gz' -type f
+ xargs rrm - f
xargs: rrm: No such file or directory
+ rm -rf
[root@PXE shell_scrpit]# cat d.sh
#path=/server/backup

find ${path:=/tmp/} -name "*.tar.gz" -type f | xargs rrm - f

#此时path没有定义 path路径将变为/tmp/

rm -rf ${path}

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。

网页题目:shell变量替换技术实践与生产实践-创新互联
当前链接:https://www.cdcxhl.com/article26/dijcjg.html

成都网站建设公司_创新互联,为您提供软件开发微信公众号网站设计关键词优化营销型网站建设企业网站制作

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

网站优化排名