草庐IT

shebangs

全部标签

c++ - 什么是 'shebang' 行?

目前我正在尝试在我的新Mac上开始编程。我安装了TextWrangler,并选择了C++作为我选择的语言;因为我有一些先验知识,从我使用Windows开始。因此,我编写了非常常见的“HelloWorld”程序。虽然,当我尝试运行它时,出现错误:“此文件似乎不包含有效的‘shebang’行(应用程序错误代码:13304)”我尝试搜索错误代码以找出解决此问题的方法,但我找不到任何东西。我不知道“shebang”行是什么...有人可以帮我吗? 最佳答案 你需要先用编译器编译它。我假设您尝试像./source那样运行源文件,但C++无法以这

windows - 在 Windows 命令提示符中使用 shebang/hashbang

我目前正在使用serve使用Node.js提供目录的脚本在Windows7上。它在MSYSshell或使用sh中运行良好,因为我已将node.exe和服务脚本放入我的~/bin(在我的PATH中),然后键入“服务”之所以有效,是因为它是Shebang(#!)指令告诉shell使用node运行它。但是,Windows命令提示符似乎不支持没有*.bat或*.exe扩展名的普通文件,也不支持shebang指令。是否有任何注册表项或其他hack可以让我从内置的cmd.exe中强制执行此行为?我知道我可以写一个简单的批处理文件来用节点运行它,但我想知道它是否可以在一个内置的fasion中完成,所

Java 11 : Executing Source File via Shebang is not working

我想看看前两天发布的java11的一些新特性。JEP330声明我可以在不编译的情况下启动Java-Source-Code-Program。它还应该支持Shebang-Files的使用。因此我编写了这个小的Hello-World程序Test.java:#!/opt/java/jdk-11/bin/java--source11publicclassTest{publicstaticvoidmain(String[]args){System.out.println("HelloWorld!");}}我downloadedJDK11并将其提取到/opt/java。因此,Shebang本身正在发

python - 阻止 Python 在 shebang 中生成 pyc 文件

这个问题在这里已经有了答案:Howtoavoid.pycfiles?(10个答案)关闭9年前。有没有办法阻止python创建.pyc文件,这些文件已经在Python脚本的shebang(或者如果你愿意的话,也可以是魔数(MagicNumber))中?不工作:#!/usr/bin/envpython-B

python - 在 Unix 中为 Python 安装命名以及 shebang 的良好使用

我对为Python脚本编写shebang的标准方法感到困惑。我有一个普通的“python”链接,根据系统的不同,它可能是Python2.x或Python3.x,这是一个问题,因为两者不兼容。作为一个解决方案,我在我的shebang中编写了版本,并且有类似的东西:#!/bin/envpython3.2但这似乎很愚蠢,因为它会阻止我的脚本在任何其他3.x版本中运行我注意到一些系统已将python2链接到最新版本。这很有帮助,因为这样我就可以编写简单的脚本,例如“HelloWorld”,它不会随着每个版本的发布而中断。我已经安装了Python2.6、2.7、3.1和3.2从可移植性的角度来看

python - 如何修复在某些系统上无法识别的 shebang 标志

出于某种原因,-O(优化)标志在我访问的RedHatEnterpriseServer(5.3版)的shebang行中无法识别。在其他系统上,可以毫无问题地识别该标志。在OSX上执行下面的脚本工作正常。可以验证-O标志的识别,因为它启用(当不存在时)或禁用(当给定时)if__debug__条件下的任何内容:#!/usr/bin/envpython-Oif__name__=='__main__':if__debug__:print'lotsofdebuggingoutputon'print'Fin'在RHE系统上执行相同的脚本会导致:/usr/bin/env:python-O:Nosuch

python - 不同版本 Python 的条件 shebang 行

尝试在两台不同的计算机上运行python脚本时遇到问题。我想在每台计算机上使用python版本2.7.3运行脚本,但是我遇到的问题是两台计算机以不同的方式命名python2.7.3。其中一台计算机运行archlinux,在这台计算机上它被命名为python2。另一台计算机运行的是redhatlinux,它使用名称python2.7.3。我应该在shebang行中使用什么,以便脚本可以在两台计算机上执行而不需要任何更改?我真正想要的是某种可以选择使用哪个版本的Python的条件shebang行。我是不是运气不好,必须保留两个不同版本的脚本?附言我不能只使用#!/usr/bin/envpy

python - 不同版本 Python 的条件 shebang 行

尝试在两台不同的计算机上运行python脚本时遇到问题。我想在每台计算机上使用python版本2.7.3运行脚本,但是我遇到的问题是两台计算机以不同的方式命名python2.7.3。其中一台计算机运行archlinux,在这台计算机上它被命名为python2。另一台计算机运行的是redhatlinux,它使用名称python2.7.3。我应该在shebang行中使用什么,以便脚本可以在两台计算机上执行而不需要任何更改?我真正想要的是某种可以选择使用哪个版本的Python的条件shebang行。我是不是运气不好,必须保留两个不同版本的脚本?附言我不能只使用#!/usr/bin/envpy

python - Ubuntu Python shebang 行不工作

无法让shebang行在Ubuntu中为python脚本工作。我每次只收到一个命令未找到错误。测试.py#!/usr/bin/envpythonprint('!')然:whichpython/usr/bin/python在shebang中尝试了python的不同位置,但没有运气,包括哪个python提供的内容。有关如何解决此问题的任何提示?谢谢 最佳答案 如果您尝试以的方式运行命令$test.py该错误可能与shebang无关。相反,test.py所在的目录不在您的PATH中。尝试$./test.py绕过PATH查找。(这是确保脚本

python - Ubuntu Python shebang 行不工作

无法让shebang行在Ubuntu中为python脚本工作。我每次只收到一个命令未找到错误。测试.py#!/usr/bin/envpythonprint('!')然:whichpython/usr/bin/python在shebang中尝试了python的不同位置,但没有运气,包括哪个python提供的内容。有关如何解决此问题的任何提示?谢谢 最佳答案 如果您尝试以的方式运行命令$test.py该错误可能与shebang无关。相反,test.py所在的目录不在您的PATH中。尝试$./test.py绕过PATH查找。(这是确保脚本