linux shell 命令替换 变量替换

本文介绍了Shell脚本中的命令替换和变量替换技术。命令替换允许执行命令并将输出结果保存以便后续使用。变量替换则提供了根据变量状态改变其值的方法,例如检查变量是否已设置或者为空,并据此给出默认值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

命令替换是指shell 可以先执行命令,将输出结果暂时保存,再适当的地方输出 `command`
#命令替换 反引号在Esc键的下方

#!/bin/bash
DATA=`date`
echo "Data is $DATA" 


变量替换: 根据变量的状态(是否为空.是否定义等) 来改变它的值

${var} 变量本来的值
${var:-word} 如果变量值为空,或被删除 (unset),那么返回 word, 但不改变var的值
${var:=word} 同上,但将var的值设置为 word;

${var:?message} 如果变量值为空,或被删除 (unset),那么将消息message 送到标准错误输出,可以用来检测变量var 是否可以被正常赋值.若此替换出现在Shell 脚本中,那么脚本将停 止运行.

${var:+word} 如果变量var 被定义,那么返回word ,但不改变var 的值

#!/bin/bash
echo ${var:-"Variable is not set"}
echo "1- Value of var is ${var}"

echo ${var:="Variable is not set"}
echo "2- Value of var is ${var}"


unset var
echo ${var:+"This is default value"}
echo "3- Value of var is ${var}"

var="Prefix"
echo ${var:+"This is default value"}
echo "4- Value of var is ${var}"
echo ${var:?"var is not defined"}
echo "5- Value of var is ${var}"

unset var
echo ${var:?"var is not defined"}
echo "6- Value of var is ${var}"



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值