Bash之变量替换进阶

${var:-value}  : 如果变量var有值,引用var的值;如果变量var的值为空,引用值value。

示例:read –p ‘…’ abc;abc=${abc:-value}

${var:=value}  : 如果变量var有值,引用var的值;如果变量var的值为空,引用值value。而且会设定变量var的值为value。

${var?=value} : 如果变量var有值,引用var的值;如果变量var的值为空,将value以标准错误的形式打印出来。

${var:+value}  : 如果变量var有值,引用value的值;如果变量var的值为空,引用var的值。

Bash之变量替换进阶

时间: 2024-10-08 10:37:02

Bash之变量替换进阶的相关文章

bash编程之变量替换

${var#*word}:表示以word为$VAR的分隔符,从左至右,找到第一次匹配的分隔符以后,去掉分隔符(含分隔符)左侧的所有字符 ${var##*word}:表示以word为$VAR的分隔符,从左至右,找到最后一次匹配的分隔符以后,去掉分隔符(含分隔符)左侧的所有字符 ${var%word*}:表示以word为$VAR的分隔符,从右至左,找到第一次匹配的分隔符以后,去掉分隔符(含分隔符)右侧的所有字符 ${var%%word*}:表示以word为$VAR的分隔符,从右至左,找到最后一次匹配

《跟老男孩学Linux运维之shell编程实战》-第三章 shell变量知识进阶

本文讲解shell变量知识进阶. 以下为知识点的总结,关于练习,本文不不涉及,还需要各位小伙伴自己练习! 1.shell中的特殊位置参数变量,请见下表: 在企业场景下,"$?"的用法: (1)判断命令.脚本或函数等程序是否执行成功: (2)若在脚本中调用执行"exit 数字",则会返回这个数字给"$?"变量: (3)如果是在函数里,则通过"return  数字",把这个数字以函数返回值的形式传给"$?".

sed关于变量替换的问题

今天说一下sed变量替换的问题这个问题主要还是一个群友提问的开始我也没有做出来 [email protected]:~/pwb/tmp# echo $a 9 [email protected]:~/pwb/tmp# sed 's/1/$a/g' ^C [email protected]:~/pwb/tmp# echo 123|sed 's/1/$a/g' $a23 就像是这样带着变量的替换后来查了以下资料有一种比较简单的方法主要就是平时我们用sed的时候都是用的单引号这里替换变量就是因为bash

[转]shell 变量替换

转自:http://blog.csdn.net/xuhongning/article/details/6191515 1,参数替换: 不含有“:”的,只要定义了,就生效,不管是否为空 含有“:”的,即使定义了,但是为空就不生效 用来替换的内容可以是字符串.一个变量.命令的输出 被替换的内容是变量,如$a.$1等 1)默认值替换,如果变量$var没有定义,则整体值为default字符串,但var变量本身并没有被设置: ${var-default}                    如果var定

shell脚本之变量替换

代码如下 #!/bin/bash a=123 let "a += 1" echo a=$a echo b=${a/12/BB} echo "b=$b" 执行结果为 a=124 b=BB4 b=${a/12/BB} 变量a中的值12被替换为BB,所以$b=BB4 shell脚本之变量替换,布布扣,bubuko.com

Bash脚本15分钟进阶教程

这里的技术技巧最初是来自谷歌的“Testing on the Toilet” (TOTT).这里是一个修订和扩增版本. 脚本安全 我的所有bash脚本都以下面几句为开场白: #!/bin/bashset-o nounsetset-o errexit 这样做会避免两种常见的问题: 引用未定义的变量(缺省值为“”) 执行失败的命令被忽略 需要注意的是,有些Linux命令的某些参数可以强制忽略发生的错误,例如“mkdir -p” 和 “rm -f”. 还要注意的是,在“errexit”模式下,虽然能有

bash环境变量

bash环境配置:         配置文件,生效范围划分,存在两类:         全局配置:             /etc/profile, /etc/profile.d/*.sh             /etc/bashrc         个人配置:             ~/.bash_profile             ~/.bashrc 按功能划分,存在两类:         profile类:为交互式登录的shell提供配置             /etc/pro

Linux Gvim shell 替换:变量替换,命令替换,转义字符

替换:如果表达式中含有特殊字符,shell会进行替换.例如在双引号中使用变量就是一种替换.转义字符也是一种替换 #!/bin/bash a=10 echo -e "Value of a is ${a} \n" #-e表示对转义字符替换,不加的话输出如下# echo "Value of a is ${a} \n" 转义字符替换 下列转义字符可用于echo 1.       \\     反斜杠        2.    \a     警报,响铃 ?3.   \b  

Shell变量替换,命令替换,转义字符

如果表达式中包含特殊字符,Shell 将会进行替换.例如,在双引号中使用变量就是一种替换,转义字符也是一种替换. 举个例子: #!/bin/bash a=10 echo -e "Value of a is $a \n" 运行结果: Value of a is 10 这里 -e 表示对转义字符进行替换.如果不使用 -e 选项,将会原样输出: Value of a is 10\n 下面的转义字符都可以用在 echo 中: 转义字符 含义 \\ 反斜杠 \a 警报,响铃 \b 退格(删除键)