Node.js #!/usr/bin/env:没有这样的文件或目录
我的Node.js #!/usr/bin/env:没有这样的文件或目录,node.js,ubuntu,Node.js,Ubuntu,我的bin/www文件中的shebang行是: pi:~/ferc$ head -n 1 bin/www #!/usr/bin/env node 然而,执行它: pi:~/ferc$ bin/www bin/www: line 1: #!/usr/bin/env: No such file or directory env文件确实存在: pi:~/ferc$ ls -lL /usr/bin/env -rwxr-xr-x 1 root root 31408 Feb 18 2016 /usr/
bin/www
文件中的shebang行是:
pi:~/ferc$ head -n 1 bin/www
#!/usr/bin/env node
然而,执行它:
pi:~/ferc$ bin/www
bin/www: line 1: #!/usr/bin/env: No such file or directory
env
文件确实存在:
pi:~/ferc$ ls -lL /usr/bin/env
-rwxr-xr-x 1 root root 31408 Feb 18 2016 /usr/bin/env
节点
文件也存在:
pi:~/ferc$ ls -al /usr/bin/node
lrwxrwxrwx 1 root root 15 Jul 7 18:29 /usr/bin/node -> /usr/bin/nodejs
而节点
运行正常:
pi:~/ferc$ node -v
v4.2.6
错误消息的真正含义是什么?它在抱怨哪个文件?您可以直接使用node,如:
#!/usr/bin/node
请参阅优缺点:原因是文件损坏,可能是由于文件中混合了LF和CF/LF行结尾 发生的情况是:
节点
可执行文件不存在。我还没有创建符号链接dos2unix
www文件,错误消失了哪个节点
说了什么?错误消息意味着它正在尝试执行一个名为“#!/usr/bin/env”的文件,但失败了。我认为bin/www
的第一行在某种程度上是腐败的,它没有被识别为shebang。@肯斯特,谢谢你的提示。我通过dos2unix
运行了该文件,错误消失了。