试图在bash脚本中使用管道。这在我的Linux上工作得很好,但是bash脚本出错了。我做错了什么?
#!/bin/bash
#some code
cmd="cat file2 | grep ':' | awk -F \":\" '{print \$1}' > pool_names"
echo $cmd
exec $cmd
我看到了这个错误
cat: invalid option -- 'F'
Try 'cat --help' for more information.
发布于 2021-06-12 13:38:55
bash内置exec
命令有一个完全不同的目标,如https://www.computerhope.com/unix/bash/exec.htm中所解释的那样。
为了让脚本工作,或者像@Jonathan在评论中建议的那样,您必须用exec
代替eval
,您可以使用bash -c "$cmd"
。
https://stackoverflow.com/questions/67949305
复制相似问题