栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

适用于Node.js脚本的hashbang

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

适用于Node.js脚本的hashbang

如果您的脚本是供Node开发人员使用的,则绝对应该使用

#!/usr/bin/env node

不必试图与只安装Node的用户兼容

nodejs

理由:

  • 这就是很酷的孩子们正在做的事情,如果您也不这样做,那么您就不会很酷。主要节点项目,如jshint,因果报应,凉亭,甚至NPM简单地使用
    #!/usr/bin/env node
    作为家当他们可执行的脚本。
  • 由于很酷的孩子正在这样做,因此在Ubuntu上使用Node的任何人都将设置
    /usr/bin/node
    为的符号链接
    nodejs
    。有高度看说明书上堆栈溢出这里这样做,并在网上所有。甚至有一个
    nodejs-legacy
    软件包的全部目的是为您创建此符号链接。使用Node的人知道如何在Ubuntu上解决此问题,如果他们想使用几乎用Node编写的任何软件,就 必须这样做
  • 这个问题似乎在Ubuntu 14.04上似乎不再存在。我只是清除Node并运行一个,
    apt-get install nodejs
    并将其创建
    /usr/bin/node
    为的符号链接
    /etc/alternatives/node
    。我怀疑受此问题困扰的人正在减少。

即使您是针对不懂Node的人的,也可能仍要使用

#!/usr/bin/env node
nodejs-legacy
如果您认为有必要,可能会在安装文档中添加手动创建符号链接或安装软件包的可能。请注意,如果有其他人
nodejs
但不可
node
用的人尝试使用上述shebang运行您的程序,他们将看到:

/ usr / bin / env:节点:没有这样的文件或目录

和谷歌搜索,这将使他们在第一结果中获得修复,并在第一页上获得多次修复。

如果您真正地急切地希望确保用户可以在

nodejs
可用但
node
不可用的系统上(或
node
实际上在“
业余分组无线节点”程序所在的系统)上运行您的软件,那么您可以使用此“两行shebang”来自Unix和LinuxStackExchange:

#!/bin/sh':' //; exec "$(command -v nodejs || command -v node)" "$0" "$@"console.log('Hello world!');

但是当Node世界中几乎没有其他人时,您真的需要这样做吗?



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/484668.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号