2010-11-03 19 views
15

Mi piace usare gli alias bash per personalizzare i comandi di bash. C'è un modo per sovrascrivere le impostazioni di alias bash, o dovrei rinominare gli alias con qualcosa di diverso rispetto al comando originale.Come posso sostituire l'alias impostato in .bash_aliases

ad esempio: i miei .bash_aliases include

alias ls='ls -ltr' 

Se voglio recuperare solo il nome del file, ho bisogno di rinominare l'alias a qualcosa di diverso 'ls'? oppure c'è un'altro modo?

+2

mi avrebbe modificato i nomi per gli alias specializzati, in modo che gli script non hanno effetti collaterali indesiderati. Quindi per il tuo elenco alias invece di ls. Guarda alcuni file .bashrc per suggerimenti su come fare le cose. –

+0

Anche se @dogbane ha fornito la risposta "corretta" alla domanda che ho postato, la tua è più pratica e quella che probabilmente userò; anche grazie per il consiglio di guardare i file .bashrc. qualcuno in particolare che consiglieresti? –

+2

@ Michael: gli alias non vengono trasferiti (esportati) negli script. –

risposta

37

Aggiungere un \ (backslash) prima che il comando per disattivare l'alias, in questo modo:

\ls

Questo invocherà l'originale (ONU alias) ls.

Esempio:

$ ls #will invoke the alias 
total 0 
-rw-rw-r-- 1 dogbane foo   0 Nov 3 16:04 c 
-rw-rw-r-- 1 dogbane foo   0 Nov 3 16:04 b 
-rw-rw-r-- 1 dogbane foo   0 Nov 3 16:04 a 

$ \ls #will disable the alias 
a b c 
+1

proprio quello che volevo, più elegante di quanto mi aspettassi - Grazie! –

+0

non funziona per il dash di Debian –

4

è possibile utilizzare /bin/ls temporaneamente, o `which ls`

Problemi correlati