バックティックを使用してシェルスクリプトを機能させるのに問題があります。これが私が問題を抱えているスクリプトのサンプルバージョンです:
#!/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
コマンドに変数を使用する最初のバックティックが実際には完全なコマンドを実行せず、2番目のコマンドと一緒に最初のコマンドの出力のみを返すのはなぜですか?コマンドを実行するための最初のバックティックを取得するために何かが足りませんか?