0

我已经设置了我ls colorless喜欢

alias ls='ls --color'
LS_COLORS='no=00:fi=00:di=00;94:ln=00;36:pi=40;33:so=00;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=00;32:*.cmd=00;32:*.exe=00;32:*.com=00;32:*.btm=00;32:*.bat=00;32:*.sh=00;32:*.csh=00;32:*.tar=00;31:*.tgz=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.zip=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.bz=00;31:*.tz=00;31:*.rpm=00;31:*.cpio=00;31:*.jpg=00;35:*.gif=00;35:*.bmp=00;35:*.xbm=00;35:*.xpm=00;35:*.png=00;35:*.tif=00;35:'
export LS_COLORS
alias less='less -R'`, and my `prompt` like `
export PS1="\n\[\e[31m\]\u\[\e[33m\]@\[\e[34;1m\]\h \[\e[36m\]\W \[\e[35m\]^\$ \[\e[0m\]"

.

我认为最好在我的显示器上看到它,但是当我做类似的事情时,ls > OUTPUTFILE甚至cat SOMEFILE我用vi它来查看输出文件时,它已经搞砸了

^[[00mNC_000954.fna^[[00m
^[[00mNC_000955.fna^[[00m
^[[00mNC_000956.fna^[[00m
^[[00mNC_000957.fna^[[00m
^[[00mNC_000958.fna^[[00m
^[[00mNC_000959.fna^[[00m
^[[00mNC_000961.fna^[[00m

它应该像

NC_000117.fna
NC_000853.fna
NC_000854.fna
NC_000868.fna
NC_000907.fna
NC_000908.fna
NC_000909.fna 

没有那些特殊符号。

那有什么问题?我不知道哪种颜色设置改变了这一点。顺便说一句,我已将我的设置vimrc colorcolorscheme delek

4

1 回答 1

1

我的 2 美分价值:

好吧,颜色设置是通过终端窗口中的转义序列处理的。如果您将标准输出通过管道传输到文件,并且请求了颜色,则应该在其中获取这些转义序列。

似乎 vim 不喜欢您当前配置中的那些转义序列。默认情况下,它使它们可见。

ls:请注意 ls --color=auto 只有当 stdout 是终端时它才会发送到文件。也许你有 --color=always on。确保你有汽车并且逃生消失了。

如果这是您的意图 - 在 vi​​m 中实际获取 ls 颜色,请查看此链接以进行更多讨论。您可以哄 vim 将它们实际视为逃逸并将它们过滤掉 - 或着色。

于 2012-09-20T17:31:46.727 回答