• #! 脚本解释器(如何不加node 直接执行js文件)


    内容来源:https://blog.csdn.net/liukai6/article/details/80071916

    #!是特殊的表示符,其后面跟的是解释此脚本的脚本解释器shell的路径。

    在Linux系统下,我们可以把JS文件当作shell脚本来运行,从而达到上述目的,具体步骤如下:

    在shell脚本中,可以通过#!注释来指定当前脚本使用的解析器。所以我们首先在node-echo.js文件顶部增加以下一行注释,表明当前脚本使用NodeJS解析。

     #! /usr/bin/env node

     console.log('hello word')

    NodeJS会忽略掉位于JS模块首行的#!注释,不必担心这行注释是非法语句。

    然后,我们使用以下命令赋予node-echo.js文件执行权限。

     $ chmod +x /home/user/bin/node-echo.js

    最后,我们在PATH环境变量中指定的某个目录下,例如在/usr/local/bin下边创建一个软链文件,文件名与我们希望使用的终端命令同名,命令如下:

    $ sudo ln -s /home/user/bin/node-echo.js /usr/local/bin/node-echo

    应该知道的:

        GNU/Linux操作系统中的/bin/sh本是bash (Bourne-Again Shell) 的符号链接,
        但鉴于bash过于复杂,有人把bash从NetBSD移植到Linux并更名为dash (Debian Almquist Shell),
        并建议将/bin/sh指向它,以获得更快的脚本执行速度。Dash Shell 比Bash Shell小的多,符合POSIX标准
        Ubuntu继承了Debian,所以从Ubuntu 6.10开始默认是Dash Shell。

        总结: #!/bin/sh是#!/bin/bash的缩减版。

    python: 两种写法的区别

      这个在unix类的操作系统才有意义。
      #!/usr/bin/python是告诉操作系统执行这个脚本的时候,调用/usr/bin下的python解释器;
      #!/usr/bin/env python这种用法是为了防止操作系统用户没有将python装在默认的/usr/bin路径里。当系统看到这一行的时候,首先会到env设置里查找python的安装路径,再调用对应路径下的解释器程序完成操作。

    时光如白驹过隙,匆匆而已。
  • 相关阅读:
    移动web前端高效开发实践 读书笔记
    前端开发最佳实践-读书笔记
    frontend-Tips
    匿名函数的几种写法
    12个用得着的JQuery代码片段(转)
    tesseract-ocr 学习笔记(比网上的中文说明都详细)
    关于大数据的思考
    单片机实验的小记录~~PWM
    组建Redis集群遇到`GLIBC_2.14' not found和ps -ef 不显示用户名
    柔性数组(Redis源码学习)
  • 原文地址:https://www.cnblogs.com/yupixiu/p/10320100.html
Copyright © 2020-2023  润新知