我正在尝试在Linux Ubuntu 16中使用 bison 实用程序。二进制文件位于 {{设置的 / usr / bin / bison 1}} 命令。
然而,当我从bash调用bison时它看起来像是有效的,但是如果我使用它的路径调用bison,我会收到以下错误(可以在截图中看到)
sudo apt-get bison
请注意,二进制文件的路径是Cannot execute binary file
此外,除了/ usr / bin中的bison二进制文件外,还有另一个名为 bison.yacc 的文件,其中包含:
*type -a bison*
这个问题有什么理由吗?任何解决方案?
答案 0 :(得分:1)
您不能将.
(或其有效别名source
)与二进制文件一起使用。
.
/ source
用于在当前 shell的上下文中执行 shell 代码。
二进制文件只能在子进程中运行,因此您可以直接调用 :
/usr/bin/bison
exec
也会创建一个新进程,但替换当前的shell。