Shell 命令替换是指将命令的输出结果赋值给某个变量
셸에서 명령 대체를 완료하는 방법에는 두 가지가 있는데, 하나는 백틱
이고 다른 하나는 $()입니다. 그 중
variable=`commands` variable=$(commands)
. , Variable은 변수 이름이고 Commands는 실행할 명령입니다. 명령은 세미콜론으로 구분되어 단 하나의 명령 또는 여러 명령을 가질 수 있습니다.
a=`expr 1 + 1` echo $a
在操作上,这两者都是达到相应的效果,但是建议使用$( ),理由如下: 1.``很容易''搞混乱,尤其对初学者来说。 2.在多层次的复合替换中,``必须要额外的转义字符处理(反斜线),而$( )比较直观。 3.$( )的弊端是,并不是所有的类unix系统都支持这种方式,但反引号是肯定支持的。
变量替换 变量替换可以根据变量的状态(是否为空、是否定义等)来改变它的值 可以使用的变量替换形式: 形式 说明 ${var} 变量本来的值 ${var:-word} 如果变量 var 为空或已被删除(unset),那么返回 word,但不改变 var 的值。 ${var:=word} 如果变量 var 为空或已被删除(unset),那么返回 word,并将 var 的值设置为 word。 ${var:?message} 如果变量 var 为空或已被删除(unset),那么将消息 message 送到标准错误输出,可以用来检测变量 var 是否可以被正常赋值。 若此替换出现在Shell脚本中,那么脚本将停止运行。 ${var:+word} 如果变量 var 被定义,那么返回 word,但不改变 var 的值。
의 차이점 Linux 관련 기술 기사를 더 보려면 Linux Tutorial 칼럼을 방문하여 알아보세요!
위 내용은 linux-shell-command 대체 및 변수 대체의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!