Shell替换

Shell替换

概述

表达式中包含特殊字符,Shell将会进行替换,因此在双引号中使用变量是一种替换,转义字符的处理也是一种替换,如

#!/bin/bash

a=5
echo -e “value of a is $a \n”

运行结果,如下

value of a is 5

注意,echo后面的 -e 是对转义字符进行替换处理,如果不使用 -e 选项,将会原样输入,如

value of a is 5 \n

转义字符

\\ 反斜杠
\a 警报,响铃
\b 退格(删除键)
\f 换页,将当前位置移到下页开头
\n 换行
\r 回车
\t 水平制表符(tab键)
\v 水平制表符

命令替换

命令替换是指Shell可以先执行命令,将输入结果暂时保存,在适当的地方输出
命令替换的语法

commond

注意:上图中的是反引号,不是单引号,这个键在Esc键的下方。
下面命令的执行结果保存在变量中

#!/bin/bash

Date=date
echo “Date is $date”

运行结果

Date is Thu Jul 2 03:59:57 MST 2017

变量替换

变量替换可以根据变量的状态(是否为空、是否定义等)来改变它的值
可以使用的变量替换形式

${var} 变量原本的值
${var:-word} 如果变量var为空或已被删除(unset),那么返回word
${var:=word} 如果变量var为空或已被删除(unset),那么返回word,并将var的值设置为word
${var:?message} 如果变量var为空或已被删除(unset),那么将消息message推送到标准错误输出,可以用来检测变量var是否可以被正常赋值,若此替换出现在Shell脚本中,则脚本的执行将被终止。
${var:+word} 如果变量var被定义,则返回word,但不改变var的值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值