特定のディレクトリにcdしたときにメッセージを表示する


15

cd特定のディレクトリに移動したときにメッセージを表示するにはどうすればよいですか?このディレクトリはローカルのディレクトリであり、ターミナルからこのディレクトリに移動するときにリマインダーが必要です。

回答:


25

もし私があなただったら、シェル設定ファイル(例えば~/.bashrc)でそのようなものをいじくり回します:

reminder_cd() {
    builtin cd "$@" && { [ ! -f .cd-reminder ] || cat .cd-reminder 1>&2; }
}

alias cd=reminder_cd

これにより、.cd-reminderリマインダーを取得する各ディレクトリにファイルを追加できます。ファイルの内容はcd、ディレクトリに成功するたびに表示されます。

gim@tenebreuse ~/tmp % echo 'warning: this directory is pure junk' > .cd-reminder
gim@tenebreuse ~/tmp % cd ..
gim@tenebreuse ~ % cd tmp
warning: this directory is pure junk
gim@tenebreuse ~/tmp % 

1
ところでクールなアイデア!私はそれが好きです、そして多分私もそれを使用します:
ステファンギメネス

この場合は重要ではありませんが、通常は常に二重引用符を使用することをお勧めします$@
enzotib

1
どのような場合がある場合おかげで、私は今、思ったんだけど$@好まれるべきでは"$@"...
ステファン・ヒメネス

1
IFSワードスプリッティングを発生させたい場合は、$@または$*(引用符で囲まれていない場合は同じです)を使用する必要があります。
クリスダウン

この方法を使用する場合、エイリアスに忘れてはいけないpushdpopdも。
mVChr
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.