Por lo general, cuando encuentro un comando que quiero alias, lo hago eco en mi .bashrc así:
[up button pressed to last command, then line edited so that it reads]
$echo "command-i-just-did" >> ~/.bashrc
Puede haber una mejor manera de hacer esto. Pero de todos modos, justo ahora sobrescribí todo el archivo .rc usando un solo galón. Sin embargo, dado que .bashrc todavía está actualizado, todavía acepta mis antiguos alias (por ahora, por supuesto). Entonces, ¿hay alguna manera de recuperarlo?
bash
data-recovery
bashrc
ixtmixilix
fuente
fuente
echo "set -o noclobber" > ~/.bashrc
(recuerde agregar un segundo soporte angular).bashrc
tenía alguna lógica que dependiera de variables locales como host, usuario, etc., eso probablemente no se pueda recuperar. La verdadera respuesta es restaurar desde su copia de seguridad más reciente. Tienes una copia de seguridad reciente ¿verdad?Respuestas:
alias
sin parámetro genera las definiciones de los alias definidos actualmente.declare -f
Da salida a las definiciones de las funciones definidas actualmente.export -p
genera las definiciones de las variables definidas actualmente.Todos esos comandos generan definiciones listas para ser reutilizadas, puede redirigir sus salidas directamente a una nueva
~/.bashrc
.Todas las listas contendrán muchos elementos definidos en otra parte, por ejemplo
/etc/profile
y/etc/bash_completion
. Por lo tanto, tendrá que limpiar la lista manualmente.fuente
.bashrc
para su sistema. En Debian está dentro/etc/skel
, o puede crear un nuevo usuario, si puede, para obtener un nuevo.bashrc
.set
ydeclare
(sin argumentos) mostrar todo esto a la vez.typeset -f > .bashrc
debería hacerlo, proporcionando todo lo que tenía eran alias.fuente
functions
comando no existe para mí4.2.10(2)-release
. Probablemente te refieresdeclare -f
.