我正在尋找一種免費的開源工具集,可以編譯各種「經典」腳本語言,例如Korn Shell,ksh,csh,bash等作爲可執行文件 - 如果腳本調用其他程序或可執行文件,則將它們包含在單個可執行文件中。如何將linux shell腳本編譯爲獨立的可執行程序* binary *(即不僅僅是例如chmod 755)?
原因:
混淆交付代碼給客戶,從而不向外界透露我們的知識產權 - 交付到客戶自己的機器/系統,我有無法控制什麼我可以設置有關訪問的權限,因此程序文件必須是二進制文件,因此在文本編輯器或查看器中查看時無法輕鬆看到工作。
爲客戶創建一個簡單部署的程序,而不需要/或最少量的任何外部依賴項。
我寧願簡單的東西,而不需要包管理器,因爲:
我不能依賴客戶的知識來進行(聯合國)包裝指令和
我不能依賴關於安裝軟件包(實際上來自第三方)的機器策略。
最簡單的優選的方法是能夠編譯到適當的機器代碼的單個可執行將運行開箱沒有任何依賴關係。
我很可能會將此作爲接受的答案。 – therobyouknow
我從來沒有聽說過這個,但它似乎是做OP的要求。請注意,它可能與bash或ksh的某些功能相似,但這對於OP的目的無關緊要。它也有一個函數來給編譯的二進制文件一個到期日期。 – ConcernedOfTunbridgeWells
這是確定的答案。我一直在使用SHC來編譯我的shell腳本,如果我沒有弄錯的話,那是2002年左右。 SHC由Francisco Javier RosalesGarcía製作。雖然有點被告知,但它仍然有效。 –