2017-08-31 42 views
0

我繼承了腳本的一箇中等規模的集合,其中一些人開始有兩個shebangs,就像這樣:爲什麼有人在shell腳本中使用兩個shebangs?

#!/bin/sh 
#!/bin/bash 
[do stuff] 

是否有使用這個構造有效的原因是什麼?

根據我的經驗,任何Unix只會將第一行視爲shebang,而第二行將成爲該腳本的第一行,而sh解釋器將作爲註釋忽略。我應該認爲這是程序員的錯誤嗎?如果我簡單地刪除第二個shebang,那麼在兼容性或可移植性方面是否有區別?

+1

看到這個:https://superuser.com/q/502984 – leftjoin

回答

2

你說得對:有沒有使用有兩個家當線。只有第一個會被使用。

也許這是以前的一些自動重構過程中的錯誤。只要看看你的版本控制系統 - 我絕對肯定是誰做了這個清楚而詳細的評論,解釋他們的理由。

相關問題