![在另一台计算机之间替换 .bashrc 文件的风险](https://linux22.com/image/1184360/%E5%9C%A8%E5%8F%A6%E4%B8%80%E5%8F%B0%E8%AE%A1%E7%AE%97%E6%9C%BA%E4%B9%8B%E9%97%B4%E6%9B%BF%E6%8D%A2%20.bashrc%20%E6%96%87%E4%BB%B6%E7%9A%84%E9%A3%8E%E9%99%A9.png)
我有两台运行 Ubuntu 20.04.3LTS 的华硕 Zenbook 笔记本电脑(我现在用的笔记本电脑,我把旧笔记本电脑作为紧急备用系统,因为我不能没有笔记本电脑)。我很少使用旧电脑,但每 3-4 周我会运行sudo ap-get update
一次sudo apt-get upgrade
。
几天前我最后一次打开它时,打开终端时出现错误:
bash: /home/will/.bashrc: line 100: unexpected EOF while looking for
matching `)'
bash: /home/will/.bashrc: line 121: syntax error: unexpected end of file
...尽管它似乎对我在终端上尝试做的所有事情都运行良好。
就像通常的情况一样,错误中提到的行中没有明显的原因——我快速浏览了一下,找不到我在文件中其他地方更改的任何可能导致此问题的内容。虽然我最终可能会找到它,但替换文件可能更容易。
我的问题是 - 因为我有第二台类似的笔记本电脑,运行相同版本的 Ubuntu,有什么理由不从较新的笔记本电脑复制正常运行的 .bashrc 来替换旧笔记本电脑上损坏的 .bashrc 吗?我大概可以用实时 USB 中的原始版本替换(这个网站上有一些帖子间接暗示这是可能的),但我突然想到我创建的一些别名(因此在较新的笔记本电脑上的 .bashrc 中)在旧笔记本电脑上会很有用。
如果可能的话,请说明你是否知道任何可能的情况不是是个好主意。可能 Ubuntu 的不同版本之间不合理?这与我的情况无关,但(出于兴趣)我认为如果硬件有很大差异(例如笔记本电脑与台式机),这不会有影响?
编辑:回复评论:这是一个自包含文件。我(故意)所做的唯一修改是添加一些别名(将我的加密分区上的数据与外部键盘加密驱动器同步)。我显然已经查看了别名以确认我没有犯一个简单的错误,但没有发现任何明显的东西。
答案1
我认为没有理由不复制并.bashrc
用新文件替换旧文件,除非文件中有大量自定义配置。
.bashrc
假设新文件中没有用户特定的自定义配置,那么新文件将是一个良好的、功能完美的替代品。
为了安全起见,最好备份旧文件。
答案2
可以通过检查当前文件来修复错误.bashrc
。但是,如果您没有进行大量自定义,最安全的方法(而不是从其他地方复制文件)是将当前文件重置.bashrc
为系统默认文件:
cp /etc/skel/.bashrc ~
答案3
感谢以上两个答案 - 只是为了确认我在一台笔记本电脑上尝试过将它转移到另一台笔记本电脑上,并且一切正常,并且解决了错误。
我没有备份旧文件,因为它已经损坏了,而且我知道(感谢@vanadium 的回答)如果出错,如何从系统默认恢复。对我来说,能够做到这一点非常有用,因为它保留了我的别名。