#!/bin/sh ECHO_TEXT="Echo this" ECHO_CMD="echo ${ECHO_TEXT} | awk -F' ' '{print \$1}'" result=`${ECHO_CMD}`; echo $result; result=`echo ${ECHO_TEXT} | awk -F' ' '{print \$1}'`; echo $result;
该脚本的输出是:
sh-3.2$./test.sh Echo this | awk -F' ' '{print $1}' Echo
为什么使用命令变量的第一个反引号实际上并不执行完整命令,而只返回第一个命令的输出和第二个命令?我错过了一些东西,以便获得执行命令的第一个反引号?