KonsoleウィンドウでGUIアプリケーションを起動しましたが、完全に役に立たない情報が記録されました。私はこれを必要としません。これを完全に防ぐ方法はありますか?私は否定しようとしましたが、役に立ちませんでした。私は2>&1> / dev / nullが役に立つと思いましたが、かなり退屈です!
さて、創造力を発揮しましょう。答えの半分はpreexecを使用し(私はzshを使用しますが、Webはbash preexecトリックでいっぱいです)、ldd
libX11を検出することです(それ以外は何ですか?)。それからhttps://stackoverflow.com/a/9188571/308851/dev/null のリダイレクトを作成する方法を示します。シェルスクリプトラッパーを持つプログラムと連携するように、このソリューションをどのように拡張できますか?
答え1
私はこれが退屈であることを知っていますが、アプリケーションに自動的に実行されるオプションがない場合は、
./app > /dev/null 2>&1
常にこれを作成したくない場合は、シェル設定ファイルで独自のエイリアスを作成できます。
.bashrc - for bash
以下を生成してエイリアスを指定する必要があります。
alias app="/usr/local/bin/app > /dev/null 2>&1"
.bash_profileを更新した後に再度ログインするか、~/.bash_profileをソースとして指定してアプリケーションを呼び出します。
編集する:Michaelの意見に基づいて修正した内容です。実際、2>&1 は /dev/null の後ろにあります。これがシェルに関連しているかどうか疑問に思います。
答え2
zsh では以下を使用できます&!
。つまり、
gui-app --args --args &!