2013-12-12 87 views
3

如果我想使用非POSIX [和我的腳本((測試形式,我宣佈我想在我的劇本的開頭POSIX和Bash腳本

#!/bin/bash 

使用的外殼,將調用Bash shell中直接避免使用這些形式可能出現的任何問題嗎?或者,如果將在哈希爆炸中引用的外殼沒有發現其他一些外殼被自動運行?

回答

4

Linux和OS X將拒絕如果在家當行中指定的可執行文件未找到(沒有嘗試過其他人)來執行腳本。

你會看到類似/bin/bash: bad interpreter: No such file or directory和退出代碼將是127

然而,它引用了所需的外殼更簡便的方式就是寫家當線如下(例如,用於bash):

#!/usr/bin/env bash

這樣,只要它在$PATH中就可以找到shell可執行文件。