繁体   English   中英

# 之间是否允许有空格? 和路径的第一个字符

[英]Is a space allowed between #! and the first character of the path?

在我使用的语言中,“#”不会开始评论。 所以我必须找到一种方法来通过第一条shebang线而不会产生错误。 一个技巧可以完成这项工作,前提是在标题 # 之后允许/允许一些空间,我的意思是写

#! /usr/path/to/the/bin/to/call/to/run/me

代替

#!/usr/path/to/the/bin/to/call/to/run/me

我没有 linux 安装可用于自己进行测试。

这个shebang会起作用吗?

shebang ( # ) 是一个 16 位内核解释的魔法“数字”(实际上是0x23 0x21 )。 此后,kernel 程序加载器(在exec -family 调用之后)尝试执行该行的剩余部分以处理包含文件内容的剩余部分。 许多(如果不是大多数)现代内核都忽略了 shebang 之后的命令前面的空格。 因此, # /bin/bash# /usr/bin/perl等应该可以被大多数现代内核所接受。 也就是说,没有后续空间的shebang更为常见。

请注意,仅供参考,可执行和可链接格式 (ELF) 幻数是 32 位: 0x7F 0x45 0x4C 0x46[DEL] [E] [L] [F]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM