У меня проблема с тем, чтобы мой shellscript работал с обратными кавычками. Вот пример версии скрипта, с которым у меня возникла проблема:
#!/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
Почему первая обратная кавычка, использующая переменную для команды, на самом деле не выполняет полную команду, а только возвращает вывод первой команды вместе со второй командой? Мне что-то не хватает, чтобы получить первый обратный апостроф для выполнения команда?