主要观点:Ruby 解释器有一个令人惊讶的技巧,文件以 shebang 行开头时,会跳过所有行直到遇到包含“ruby”字符串的 shebang 行,可从 shell 脚本切换到 Ruby 脚本,但存在一些问题,如只看“ruby”单词可能导致误判;作者不喜欢这种语言技巧,Python 也有类似做法,利用三引号字符串在 Python 中无副作用以及特定的语法在 Bash 中实现类似效果。
关键信息:Ruby 中 shebang 行的特殊处理方式及示例,Python 类似技巧的实现方式及示例,相关代码链接ruby.c#L2681。
重要细节:Ruby 中不同 shebang 行示例及其运行结果,如包含“/bin/rb”的 shebang 行会导致“no Ruby script found in input”,Python 中利用三引号字符串和特定语法实现从 Bash 切换到 Python 等。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。