Linux 将命令集输出存储到shell变量会引发错误
在我的shell脚本中,我有以下几行Linux 将命令集输出存储到shell变量会引发错误,linux,bash,shell,unix,command-line,Linux,Bash,Shell,Unix,Command Line,在我的shell脚本中,我有以下几行 name=`grep -i "client" fin${i}.txt` jobplan_name=`${name} | cut -d "=" -f4 | cut -d " " -f1` echo ${jobplan_name} 输出: <JOBP: not found 我想你需要一个回音: jobplan_name=`echo ${name} | cut -d "=" -f4 | cut -d " " -f1` 我想你需要一个回音: jobpl
name=`grep -i "client" fin${i}.txt`
jobplan_name=`${name} | cut -d "=" -f4 | cut -d " " -f1`
echo ${jobplan_name}
输出:
<JOBP: not found
我想你需要一个回音
:
jobplan_name=`echo ${name} | cut -d "=" -f4 | cut -d " " -f1`
我想你需要一个回音:
jobplan_name=`echo ${name} | cut -d "=" -f4 | cut -d " " -f1`
我想你需要一个回音:
jobplan_name=`echo ${name} | cut -d "=" -f4 | cut -d " " -f1`
我想你需要一个回音:
jobplan_name=`echo ${name} | cut -d "=" -f4 | cut -d " " -f1`
如果没有echo
,您将尝试执行一个名为name
的命令,并将其输出管道化为cut
,而不是将name
本身的值管道化为cut
。因为反勾表示“将包含在中的命令的输出提供给我”。name
变量的内容不是系统可以识别的命令:因此“找不到”。echo
命令的输出是您想要的:变量name
包含的字符串。如果没有echo
,您将尝试执行名为name
的命令,并将其输出传输到cut
,而不是将name
本身的值管道化到cut
。因为反勾表示“给我包含在其中的命令的输出”。name
变量的内容不是系统可以识别的命令:因此“找不到”。echo
命令的输出是您想要的:变量name
包含的字符串。如果没有echo
,您将尝试执行名为name
的命令,并将其输出传输到cut
,而不是将name
本身的值管道化到cut
。因为反勾表示“给我包含在其中的命令的输出”。name
变量的内容不是系统可以识别的命令:因此“找不到”。echo
命令的输出是您想要的:变量name
包含的字符串。如果没有echo
,您将尝试执行名为name
的命令,并将其输出传输到cut
,而不是将name
本身的值管道化到cut
。因为反勾表示“给我包含在其中的命令的输出”。name
变量的内容不是系统可以识别的命令:因此“找不到”。echo
命令的输出是您想要的:变量name
包含的字符串。