Python 从给定脚本文件检索hash bang/shebang
是否有方法检索UNIX shell将用于给定脚本的解释器的路径?最好使用Python API或作为shell命令 要像这样使用:Python 从给定脚本文件检索hash bang/shebang,python,shell,shebang,Python,Shell,Shebang,是否有方法检索UNIX shell将用于给定脚本的解释器的路径?最好使用Python API或作为shell命令 要像这样使用: $ get_bang ./myscript.py /usr/bin/python3 当然,我可以使用RE手动提取,但我确信在现实世界中,这比处理第一行更复杂,我不想重新发明轮子 我之所以需要它,是因为我想从另一个脚本内部调用脚本,并想向解释器添加参数。实际上,它并不比读取第一行的第一个单词复杂 试着把shebang放在第二行,甚至在前面加一个空格,看看会发生什么 此
$ get_bang ./myscript.py
/usr/bin/python3
当然,我可以使用RE手动提取,但我确信在现实世界中,这比处理第一行更复杂,我不想重新发明轮子
我之所以需要它,是因为我想从另一个脚本内部调用脚本,并想向解释器添加参数。实际上,它并不比读取第一行的第一个单词复杂 试着把shebang放在第二行,甚至在前面加一个空格,看看会发生什么
此外,您还可以查看和了解更多有关shebang功能的信息。许多方法,例如:
sed -n '1s/^#!//p' filename
例如印刷品
/bin/sh
或者如果是多字
/usr/bin/env perl
或者什么都没有,如果这里没有shebang小的改进:sed-n'1{s/^![:blank:][]*//p;q}文件名