是Shebang#!
,例如,Shebang(#!)是否標準化?
#!/bin/sh
在Linux標準庫或任何Open Group標準或其他任何地方正式標準化的腳本可執行文件前面?如果是,請提供參考和細節。
注:我最感興趣的是它的shell腳本以及任何可執行文件的含義。換句話說,是否有任何標準要求在可執行文件的開始處使用類似於#!
的shebang解釋?但是,標準中的任何其他參考也是受歡迎的。
是Shebang#!
,例如,Shebang(#!)是否標準化?
#!/bin/sh
在Linux標準庫或任何Open Group標準或其他任何地方正式標準化的腳本可執行文件前面?如果是,請提供參考和細節。
注:我最感興趣的是它的shell腳本以及任何可執行文件的含義。換句話說,是否有任何標準要求在可執行文件的開始處使用類似於#!
的shebang解釋?但是,標準中的任何其他參考也是受歡迎的。
POSIX留下未指定的效果#!
。從2.1殼牌簡介
外殼從一個文件(請參閱sh)讀取輸入,從-c選項或從系統中()和在POSIX的系統接口體積定義POPEN()函數。 1-2008。如果shell命令文件的第一行以字符「#!」開頭,則結果未指定。
從source:
Bash腳本通常以#開頭!/bin/bash(假設Bash已在/ bin中安裝了 ),因爲這可確保Bash將用於解釋腳本,即使它在另一個shell下執行。
您還可以檢查此The #! magic, details about the shebang/hash-bang mechanism on various Unix flavours
你的回答是一個很好的註釋。 :) – jotik