当我使用 .bashrc 时颜色消失

当我使用 .bashrc 时颜色消失

最近我开始广泛使用 bash,所以我决定最好使用.bashrc。我使用 Ubuntu 16.04 LTS。这是我的.bashrc。里面几乎没有任何东西。与颜色完全无关。

function most_active_files_git {
     # https://stackoverflow.com/a/7686616/5698202
     git log --pretty=format: --name-only | sort | uniq -c | sort -rg
}

function sort_files_by_size_current_directory {
    ls -lShr
}

function find_main_function {
    grep -r -- 'main[  ]*(\|int main\|__main__\|main\s* ='
}

当我将此文件复制到~/并打开新终端时,没有颜色。当我删除我的.bashrc文件~/并打开新终端时,颜色会重新出现。

Vim 和 Git 提供的彩色文本工作正常。当我使用 或任何系统实用程序时,没有颜色ls出现grep

我读过并尝试过的事情:-

  • alias ls='ls --color=auto'- 我不喜欢这个,但它确实有效。这是让它发挥作用的唯一方法吗?
  • force_color_prompt=yes- 也尝试过把这个放在我的上面.bashrc。没有用。
  • 修改了菜单栏中的每个设置。显示颜色设置根本没有被触及。但它们没有出现

而且为什么如此简单的配置更改会导致如此不相关的结果?

答案1

您的新文件会覆盖创建用户帐户时~/.bashrc从目录中复制的默认文件。除其他功能外,该文件还提供颜色提示以及和 的别名。/etc/skellsgrep

不要创建新的,而是~/.bashrc重新复制默认的并将函数定义添加到其中 - 或者为函数创建一个单独的文件并来源它来自原来的~/.bashrc

相关内容