【发布时间】:2015-11-09 09:59:35
【问题描述】:
我想运行这个脚本:
#!/bin/bash
echo <(true)
我运行它:
sh file.sh
我得到 "Syntax error: "(" unexpected" 。我发现了一些类似的情况,但仍然无法解决这个问题。
我是 shell scripting 的初学者,但据我所知:
- 我使用的shebang是正确的,并且选择了bash shell,所以进程替换语法应该可以工作
- 我从命令行尝试了同样的方法,它可以工作。我检查了
echo $0,它给了我 "bash" ,那么在命令行中运行命令和调用相同 shell 的脚本有什么区别?
也许这很简单,但我找不到解释或解决方案。
【问题讨论】:
-
如何运行这个脚本?我可以用
sh ./script.sh重现这个。 -
@Cyrus 我不能和
./file.sh:) 即它应该对我有用。 -
如果还没有解决,那么
标签: linux bash shell process-substitution