2009-05-20 5 views
17

Sono un felice utente di BASH. Non voglio passare a un'altra shell (in questo caso ZSH).BASH blank alias 'cd'

ZSH ha questa capacità di cambiare una directory senza necessariamente digitazione:

cd /to/a/directory 

Quale sarebbe l'alias corretto (o forse la funzione BASH) per cambiare directory senza dover digitare cd?

Sul mio precedente esempio, trasferirsi in a/a/directory/sarebbe stato fatto in questo modo:

/to/a/directory 

ho provato:

alias ''='cd ' 
alias ""='cd ' 
alias " "='cd ' 

Tutte le idee?

+8

Se è stato consentito un alias vuoto come nei primi due tentativi, e se ha funzionato nel modo desiderato, TUTTI i comandi diventerebbero comandi "cd". –

risposta

30

È un'opzione aggiunta in version 4.0 of Bash. È possibile impostare con:

$ shopt -s autocd 

Metti che nel file .bashrc per attivarla sempre.

+0

Grazie, sembra che dovrò aspettare su questo: bash: shopt : autocd: nome opzione shell non valida – alfredodeza

+0

Ho aggiunto le informazioni sulla versione alla domanda e collegato al registro modifiche (è nella sezione 3 "Nuove funzionalità in Bash", elemento d) – dbr

+0

@alfredodeza Bene, si potrebbe fare 'shopt -s autocd 2>/dev/null'. Quindi puoi avere la soddisfazione di avere il comando lì senza il fastidio del messaggio di errore. :) – Sildoreth

5

Non credo che sarete in grado di avere un alias "vuoto", in realtà non ha senso ..

versione bash 4.0 Aggiunta l'opzione autocd, che è impostato eseguendo shopt -s autocd (come ha risposto mipadi)

Non esiste questa opzione nelle versioni precedenti di bash, fastidiosa.

+0

Autoc a parte, potrebbe essere stato in grado di ottenere questo utilizzando trappole, che potrebbe diventare brutto, ma penso che funzionerebbe in una certa misura ... – osirisgothra