.bashrc 被覆盖但仍然来源 - 如何恢复?

ixt*_*lix 20 bash data-recovery bashrc

通常当我找到一个我想要别名的命令时,我会像这样将它回显到我的 .bashrc 中:

[up button pressed to last command, then line edited so that it reads]
$echo "command-i-just-did" >> ~/.bashrc
Run Code Online (Sandbox Code Playgroud)

可能有更好的方法来做到这一点。但无论如何,刚才我用一个人字形覆盖了整个 .rc 文件。但是,由于 .bashrc 仍然是最新的,它仍然接受我的旧别名(当然是现在)。那么有没有办法恢复呢?

man*_*ork 22

  • alias 不带参数输出当前定义的别名的定义。
  • declare -f 输出当前定义函数的定义。
  • export -p 输出当前定义的变量的定义。

所有这些命令输出定义都可以重用,您可以将它们的输出直接重定向到新的~/.bashrc.

所有列表都将包含许多在别处定义的元素,例如/etc/profile/etc/bash_completion。因此,您必须手动清理列表。

  • 我还建议从系统的默认 `.bashrc` 开始。在 Debian 中,它在 `/etc/skel` 中,或者你可以创建一个新用户,如果可以的话,来获得一个全新的 `.bashrc`。 (3认同)