web-dev-qa-db-ja.com

複数のbashスクリプトでpushd / popdスタックを表示しない(静かなpushd / popd)

Pushdまたはpopdを使用するたびに、スタックが標準出力に出力されます。そうしないのはどうして?

したくないpushd > /dev/null毎回、お互いを呼び出すスクリプトがたくさんあるからです。

Niceオーバーライドがそれを行うかもしれませんが、これらのビルトインをスクリプトでのみオーバーライドし、正しい動作を復元する必要があります。

77
bemug

追加できます

pushd () {
    command pushd "$@" > /dev/null
}

popd () {
    command popd "$@" > /dev/null
}

各スクリプトの先頭に。これはおそらく、問題を解決するために必要な作業の最小量です。

111
chepner

.profileファイル(システムで呼び出されるもの)に以下を追加します。

pushd () {
    command pushd "$@" > /dev/null
}

popd () {
    command popd "$@" > /dev/null
}

export pushd popd
3
bozon

Zshでは、setopt PUSHDSILENT。これを~/.zshrc

1