Bashの出力がどこに行くのかわかりません。

Bashの出力がどこに行くのかわかりません。

vimプラグインリモートリストをファイルに出力する小さなスクリプトを作成し、どの項目を保持または削除したいかを把握することができました。ただし、実行すると、出力はファイルにパイプされません。他のすべては正常に動作します。私がここで何を間違っているのか?

#!/usr/bin/env bash
HERE=$(pwd)
for D in $HOME/.vim/plugged/*/; do
    if [ -d "${D}" ]; then
        cd "$D" || git remote -v >> "$HERE/vim-plug-remotes.txt";
    fi;
done
cd "$HERE" || exit

ベストアンサー1

cd "$D" || ...

ディレクトリを変更するか、別の操作を実行することです。つまり、cd成功すると(必ずそうする必要がある)、git実行されません。

cd "$D" && git ...

CDを持ってこのようなことをする方が一般的です。 (bash -xこの種のデバッグに便利です)。

おすすめ記事