![我如何让 dir 像 ls 一样为文件/目录显示颜色?](https://linux22.com/image/1064899/%E6%88%91%E5%A6%82%E4%BD%95%E8%AE%A9%20dir%20%E5%83%8F%20ls%20%E4%B8%80%E6%A0%B7%E4%B8%BA%E6%96%87%E4%BB%B6%2F%E7%9B%AE%E5%BD%95%E6%98%BE%E7%A4%BA%E9%A2%9C%E8%89%B2%EF%BC%9F.png)
我正在运行 Ubuntu 18.04,并且我习惯于输入 dir 而不是 ls。当我使用 ls 时,我会得到以不同颜色列出的目录内容,这是意料之中的,但是,当我输入 dir 时,我得到的是相同的内容,但没有颜色。我试图让 dir 使用 ls 使用的颜色,或者以任何可能的方式模拟它本身。这些尝试均未成功:
- 目录颜色
- 在我的 .bashrc 中将 dir 别名为 ls
- 尝试找到 dir 命令/别名所在的位置(我没有找到它,也没有在谷歌上搜索它的位置)
- 在我的 .bashrc 中放入“dir --color=always”和“dir --color=auto”,它工作一次,但后续调用不起作用
答案1
您可以dir --color
通过将以下行添加到.bashrc
alias dir="dir --color"
添加dir --color=always
不会创建别名,但会在您启动新的登录 shell 时运行该命令。
修改文件后,你还需要重新启动终端.bashrc
,或者你可以运行
source ~/.bashrc
注意:dir --color=always
和是等效的。省略时,参数dir --color
的默认值为。color
always
答案2
您好,欢迎来到 Ask Ubuntu!
man dir
指着:
--color[=WHEN]
colorize the output; WHEN can be 'always' (default if omitted), 'auto', or 'never'; more info below
--color
因此,正如您正确思考的那样,您正在寻找标志。
事实上,你不应该把命令 dir --color
但.bashrc
你应该创建一个新的别名:
alias dir='dir --color'
此外,在我的系统上,dir
颜色与完全相同ls
。
答案3
为了启用 ls 的颜色支持并添加处理其他别名,您可以添加手动作为默认颜色。
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
alias dir='dir --color=auto'
fi
希望这可以帮助。