次のエイリアスを使用することをお勧めします。
cd() {
pushd $1;
}
バッシュから?
popd
1つだけを使用するのではなく、一連のsを使用できるので、これは非常に便利だと思いますcd -
。
問題が発生する可能性がある状況はありますか?
ベストアンサー1
個人的には、私はbashrcに次のものを持っており、常に使用しています。
pushd()
{
if [ $# -eq 0 ]; then
DIR="${HOME}"
else
DIR="$1"
fi
builtin pushd "${DIR}" > /dev/null
echo -n "DIRSTACK: "
dirs
}
pushd_builtin()
{
builtin pushd > /dev/null
echo -n "DIRSTACK: "
dirs
}
popd()
{
builtin popd > /dev/null
echo -n "DIRSTACK: "
dirs
}
alias cd='pushd'
alias back='popd'
alias flip='pushd_builtin'
その後、ブラウザのようにコマンドラインをナビゲートできます。cd
ディレクトリを変更します。back
以前にcd
編集したディレクトリに移動します。flip
現在のディレクトリと前のディレクトリの間をディレクトリスタックから取り出すことなく移動します。全体的に見事に動作します。
私が知っている唯一の実際の問題は、これが私に完全に慣れていますが、他の人のコンピュータには存在しない一連の命令であるということです。したがって、他の人のコンピュータを使用する必要がある場合は、少し面倒なことがあります。pushd
そして直接使用に慣れている場合、popd
この問題は発生しません。エイリアスcd
を入れずにエイリアスを指定すると、存在しない問題は発生しませんが、popd
他のコンピュータでは目的の効果が得られないという問題が引き続き発生しますback
。cd
しかし、あなたの特定の実装は、一般自体がホームディレクトリに移動するcd
ように正確には機能しませんが、あなたの実装はそうではないことを指摘したいと思います。ここにあるバージョンにはこの問題はありません。私も印刷物の前に追加されますが、これは個人的な好みの問題です。cd
cd
DIRSTACK
dirs
だから私が言ったように、私はいつもこれらのエイリアスを使用しており、問題はありません。他の機械を使用する必要がありますが、そこにいないことがわかると、少しがっかりする可能性があります。 (驚くべきことではありませんが、あまりにも頻繁に使用して考えることができないマシンの1つです。)それでも驚くことができます。