我意外地覆盖了该/etc/bash.bashrc
文件。
请给我该文件中要恢复的默认内容,或者文件本身。
答案1
如果你覆盖了你的 bash,最好的方法是从你的系统本身而不是其他人的系统再次复制它:
rm ~/.bashrc
cp /etc/skel/.bashrc ~/
答案2
我的 /etc/bash.bashrc 文件如下:
# System-wide .bashrc file for interactive bash(1) shells.
# To enable the settings / commands in this file for login shells as well,
# this file has to be sourced in /etc/profile.
# If not running interactively, don't do anything
[ -z "$PS1" ] && return
# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize
# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
debian_chroot=$(cat /etc/debian_chroot)
fi
# set a fancy prompt (non-color, overwrite the one in /etc/profile)
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
# Commented out, don't overwrite xterm -T "title" -n "icontitle" by default.
# If this is an xterm set the title to user@host:dir
#case "$TERM" in
#xterm*|rxvt*)
# PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"'
# ;;
#*)
# ;;
#esac
# enable bash completion in interactive shells
#if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
# . /etc/bash_completion
#fi
# sudo hint
if [ ! -e "$HOME/.sudo_as_admin_successful" ]; then
case " $(groups) " in *\ admin\ *)
if [ -x /usr/bin/sudo ]; then
cat <<-EOF
To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.
EOF
fi
esac
fi
# if the command-not-found package is installed, use it
if [ -x /usr/lib/command-not-found -o -x /usr/share/command-not-found ]; then
function command_not_found_handle {
# check because c-n-f could've been removed in the meantime
if [ -x /usr/lib/command-not-found ]; then
/usr/bin/python /usr/lib/command-not-found -- $1
return $?
elif [ -x /usr/share/command-not-found ]; then
/usr/bin/python /usr/share/command-not-found -- $1
return $?
else
return 127
fi
}
fi
但是,你也可以从 Live CD 启动并将 Live CD 文件复制到硬盘上,即
sudo mkdir /mnt/tempmount
sudo mount -t ext4 /dev/sda1 /mnt/tempmount
sudo cp /etc/bash.bashrc /mnt/tempmount/etc/bash.bashrc
将 /dev/sda1 更改为安装 ubuntu 的分区。
答案3
从 Bash 包中获取
下载 Bash 包:
apt-get download bash
或者手动从以下位置下载https://packages.ubuntu.com/bionic/amd64/bash/download
- 对于其他 Ubuntu 版本,将“bionic”替换为您的版本名称。
- 使用档案管理器浏览 .deb 文件
- 提炼
/etc/bash.bashrc
- 您还可以
~/.bashrc
在 下找到/etc/skel/.bashrc
。
- 您还可以
来源:安排的评论
答案4
这是一个很晚的答案,但它可能会对某些人有所帮助。
您的 Linux 发行版负责自定义它,因此请从其 bash 包中获取它。有一种方法可以强制重新安装 bash 包这取决于您的发行版使用的包管理器。您没有指定哪个发行版,因此我们无法真正确定您可能拥有哪个发行版,以便提供更具体的说明。
我的建议是使用你最喜欢的搜索引擎,输入类似“[包管理器] 强制安装包”这样的查询来查找具体说明,并将其调整到 bash 包中。例如,对于好吃或者地下城与勇士你需要重新下载 .rpm 包(或者在缓存中找到它),然后使用一个特殊的转速调用来执行此操作,或者易于你会使用一个特殊的apt-get命令强制重新安装。虽然有许多软件包管理器,但它们通常不能互换 - 这肯定特定于您的 Linux 发行版。
您可以在此处(在 bash 的官方 git repo 中)找到示例 bash 启动文件:
https://git.savannah.gnu.org/cgit/bash.git/tree/examples/startup-files