我可以在哪里找到默认 /etc/bash.bashrc 文件的内容?

我可以在哪里找到默认 /etc/bash.bashrc 文件的内容?

我意外地覆盖了该/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 包中获取

  1. 下载 Bash 包:

    apt-get download bash
    

    或者手动从以下位置下载https://packages.ubuntu.com/bionic/amd64/bash/download

    • 对于其他 Ubuntu 版本,将“bionic”替换为您的版本名称。
  2. 使用档案管理器浏览 .deb 文件
  3. 提炼/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

相关内容