Mostra messaggio quando cd nella directory specifica


15

Come posso visualizzare un messaggio quando mi trovo cdin una directory specifica? Questa directory è locale e ho solo bisogno di un promemoria quando entro dal terminale.

Risposte:


25

Se fossi in te, mi divertirei con qualcosa del genere nel mio file di configurazione della shell (ad esempio ~/.bashrc):

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

alias cd=reminder_cd

In questo modo, puoi aggiungere un .cd-reminderfile in ogni directory per cui desideri ricevere un promemoria. Il contenuto del file verrà visualizzato dopo ogni successo cdnella directory.

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
Bella idea a proposito! Mi piace e forse lo userò anche io :-)
— Stéphane Gimenez,

Non importante in questo caso, ma in generale è bene abitare sempre di raddoppiare la citazione $@.
— enzotib,

1
Grazie, ora mi chiedo se ci sia un caso in cui $@dovrebbe essere preferito rispetto a "$@"...
— Stéphane Gimenez,

1
Dovresti usare $@o $*(sono la stessa cosa quando non quotato) quando vuoi che si verifichino le parole di IFS.
— Chris Down,

Se usi questo metodo non dimenticare di fare lo pseudonimo pushde popdanche.
— mVChr
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.