![](/img/trans.png)
[英]Log output from bash script into log file and stdout while running from perl
[英]How can I prevent “type” stdout from appearing while running my script?
我目前正在處理一個腳本,該腳本需要在程序首次啟動時檢查是否已安裝該程序。 如果程序不存在,腳本將繼續執行程序安裝所需的一切。 到目前為止,我已經嘗試了以下方法:
program_exist=$( type "someprogram" | grep "not found" )
if ! "$someprogram_exist"; then
do some stuff
fi
program_exist=$( type "someprogram" 2>&1 >/dev/null | grep "not found" )
if ! "$someprogram_exist"; then
do some stuff
fi
但是每次運行此命令時,我總是會遇到以下消息:
./some_program.sh: line 8: ./some_program.sh: line 7: type: someprogram: not found: No such file or directory
有沒有一種方法可以檢查程序是否存在而不會顯示./some_program.sh: line 8: ./some_program.sh: line 7: type: someprogram: not found: No such file or directory
每次都./some_program.sh: line 8: ./some_program.sh: line 7: type: someprogram: not found: No such file or directory
消息?
只需嘗試:
if ! type someprogram &>/dev/null; then
do_some_stuff
fi
或更短:
type someprogram &>/dev/null || do_some_stuff
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.