Shell中的变量替换
${str-newStr} 仅当str为null的时候替换
${str:-newStr} 当str为null或者str为空字符串的时候替换
综上,-号,当str没有内容,则替换, :号只是增加了空字符串的情况。注意,结果是表达式的值,并没有改变原有的str
${str+newStr} 仅当str有内容的时候替换
${str:+newStr} 当str不为null的时候替换
综上,+号,当str有内容,则替换, :号只是增加了空字符串的情况。
${str=newStr}
${str:=newStr}
=号的作用和-号相同,不同之处在于,他会将替换后的表达式的值交给原来的str
${str?newStr}
${str:?newStr}
?的意思是,如果str没有值,则将newStr输出到标准错误,:号只是增加了空字符串的情况。
Shell中的变量替换的更多相关文章
- shell编程系列1--shell脚本中的变量替换
		
shell编程系列1--shell脚本中的变量替换 变量替换总结: .${变量#匹配规则} # 从头开始匹配,最短删除 .${变量##匹配规则} # 从头开始匹配,最长删除(贪婪模式) .${变量%匹 ...
 - python在shell中环境变量使用
		
1.用Python Shell设置或获取环境变量的方法: 设置系统环境变量 os.environ['环境变量名称']='环境变量值' #其中key和value均为string类型 os.putenv( ...
 - shell中的变量a=100, 什么时候作整数使用, 什么时候作字符串使用呢?
		
shell中的变量a=100, 什么时候作整数使用, 什么时候作字符串使用呢? 这确实是一个困扰很久的一个问题? how it can be an issue? 事实上, 在shell中, 你可以认为 ...
 - SHELL 中的变量
		
变量的分类 系统环境变量 系统本身所有,通常为大写字母 系统变量通过 set 或 declare 指令进行查看 UDV 变量(user defined variable ) 用户创建和维护,建议大写 ...
 - C Shell中的变量数组
		
今天刚刚在看一点C Shell的内容,发现一个挺好玩的东西!就是环境变量可以像数组那样来设置!具体设置语法如下: set variable=(element1 element2 ...) //注意元素 ...
 - Linux Shell中的变量声明和一些特殊变量
		
在SHELL中定义变量比较直接,无类型区别,不需要像Java那样定义好是String还是int等. 声明变量需要遵守或者注意的几点: 变量名和等号之间不能有空格. 变量名首字符必须为字母. 变量名里可 ...
 - shell专题(四):Shell中的变量
		
4.1 系统变量 1. 常用系统变量 $HOME.$PWD.$SHELL.$USER等 2.案例实操 (1)查看系统变量的值 [atguigu@hadoop101 datas]$ echo $HOME ...
 - Oracle的SQL语句中的变量替换
		
一.问题描述 如下SQL: INSERT INTO tmp(val)VALUES('a&b'); 执行过程中会出现如下提示: 点击"确定"过后我们查看表中的数据: b后面的 ...
 - Shell中脚本变量的作用域
		
原文地址:http://blog.csdn.net/abc86319253/article/details/46341839 在shell中定义函数可以使代码模块化,便于复用代码.不过脚本本身的 ...
 
随机推荐
- 「旅游信息管理系统」 · Java Swing + MySQL 开发
			
代码写得烂,写博客纯属记录! 微信公众号:BugLass 码云仓库地址:https://gitee.com/ynavc/tourism_sys 源代码及文档打包下载:https://download. ...
 - java -jar 指定logback.xml、application.yaml
			
java -jar 指定logback.xml -Dlogging.config="C:\logbacs\logback.xml" 示例:java -jar -Dlogging ...
 - SpringCloud发现服务代码(EurekaClient,DiscoveryClient)
			
1.说明 本文介绍SpringCloud发现服务代码的开发, 通过使用EurekaClient,DiscoveryClient来发现注册中心的服务等, 从而可以自定义客户端对注册中心的高级用法. 2. ...
 - Identity Server 4到今年年底就停止支持了,试一下使用Orchard Core 作为认证服务
			
Identity Server 4到今年年底就停止支持了,新的版本需要收费(好像目前是按企业规模,不过将来说不准).我们需要为这种情况做一些技术准备,至少需要为用户多准备一些可选方案.从目前成熟的开源 ...
 - js箭头函数  的 (e) => { } 写法笔记
			
1. (e) => {} 是ES 6 新语法,默认是Es 5.1,因此在这里设置一下就不会提示红色下划线了 2.使用: (e) => {} , 其实就是function (e){} 的缩 ...
 - spring cloud --- config 从git 获取文件【 可能是yml或 properties】遇到有相同字段的取值规则
			
spring boot 1.5.9.RELEASE spring cloud Dalston.SR1 1.前言 昨天做了 spring cloud config 配置中心 获取存在gi ...
 - Go语言系列之自定义实现日志库
			
日志库logo gitee地址传送门:https://gitee.com/zhangyafeii/logo 日志库需求分析 1. 支持往不同的地方输出日志 2. 日志分级别 Debug Trace I ...
 - Angularjs实现下拉列表排序
			
<select class="form-control underline" ng-model="reportform.score" ng-options ...
 - html手机调试
			
长话短说 npm install anywhere -g 安装好后,cmd 命令 进入你要调试html页面的目录,运行 anywhere AnyWhere 静态文件服务器 软件简介 AnyWhere是 ...
 - 51 Nod 1006 最长公共子序列(LCS & DP)
			
原题链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1006 题目分析: 首先先知道LCS问题,这有两种: Long ...