我不知道是否有一個更簡單的方法來在bash中執行腳本,只要這個腳本存在。我要的是等價於:如何在bash中執行腳本?
if [ -x $name ]
then
$name
fi
或
[ -x $name ] && $name
我所尋找的是類似
exec_if_exist $name
免去了腳本的名稱的重複。
有沒有辦法在bash中簡化這個? 我不想要一個函數或「推測」執行,這會給命令找不到錯誤。
最佳
我不知道是否有一個更簡單的方法來在bash中執行腳本,只要這個腳本存在。我要的是等價於:如何在bash中執行腳本?
if [ -x $name ]
then
$name
fi
或
[ -x $name ] && $name
我所尋找的是類似
exec_if_exist $name
免去了腳本的名稱的重複。
有沒有辦法在bash中簡化這個? 我不想要一個函數或「推測」執行,這會給命令找不到錯誤。
最佳
您可以用type
命令有所簡化它。通過測試,它需要文件的完整路徑或相對路徑。用type
它將搜索PATH。
type $name && $name
它也是不錯的,因爲它把成功的標準輸出和失敗上STDERR,讓您在輸出完全控制
# mute success
type >/dev/null
# mute fail
type 2>/dev/null
# mute both
type &>/dev/null
所以想''rm'命令刪除文件如果存在像'rm -f script.sh'的權利?在你的情況下,你想執行它。 –
我想了一件更簡單的事情:test -x $ name && $ _ – Jaro