Wenn ich einen Befehl finde, den ich als Alias verwenden möchte, gebe ich diesen normalerweise wie folgt an meine .bashrc-Datei weiter:
[up button pressed to last command, then line edited so that it reads]
$echo "command-i-just-did" >> ~/.bashrc
Möglicherweise gibt es einen besseren Weg, dies zu tun. Aber im Moment habe ich die gesamte RC-Datei mit einem einzigen Chevron überschrieben. Da die .bashrc-Datei jedoch immer noch aktuell ist, werden meine alten Aliase (vorerst natürlich) weiterhin akzeptiert. Gibt es also eine Möglichkeit, es wiederherzustellen?
bash
data-recovery
bashrc
ixtmixilix
quelle
quelle
echo "set -o noclobber" > ~/.bashrc
(Denken Sie daran, eine zweite spitze Klammer hinzuzufügen).bashrc
alle hatten Logik darin , dass wie Host, Benutzer usw. auf lokale Variablen abhängig , die wahrscheinlich nicht wiederherstellbar ist. Die eigentliche Antwort ist die Wiederherstellung von Ihrem letzten Backup. Sie haben ein aktuelles Backup oder?Antworten:
alias
ohne Parameter gibt die Definitionen der aktuell definierten Aliase aus.declare -f
gibt die Definitionen der aktuell definierten Funktionen aus.export -p
gibt die Definitionen der aktuell definierten Variablen aus.Alle diese Befehle geben Definitionen aus, die zur Wiederverwendung bereit sind. Sie können ihre Ausgaben direkt auf eine neue umleiten
~/.bashrc
.Alle Listen enthalten viele Elemente, die an anderer Stelle definiert sind, zum Beispiel
/etc/profile
und/etc/bash_completion
. Sie müssen die Liste also manuell bereinigen.quelle
.bashrc
für Ihr System zu beginnen. In Debian ist es in/etc/skel
, oder Sie können einen neuen Benutzer erstellen, wenn Sie können, um einen brandneuen zu erhalten.bashrc
.set
unddeclare
(ohne Argumente) zeigen all dies auf einmal an.typeset -f > .bashrc
sollte es tun, vorausgesetzt, Sie hatten nur Aliase.quelle
functions
Befehl existiert für mich nicht auf4.2.10(2)-release
. Du meinst wahrscheinlichdeclare -f
.