可执行文件在 ls 的输出中其名称旁边显示字符 *

可执行文件在 ls 的输出中其名称旁边显示字符 *

我注意到,当我在 Z shell 上列出我的可执行文件时,它们的名称旁边ls会显示一个字符(例如,请参阅红色的文件)*.test_color_scheme

    在此输入图像描述

是什么原因造成的?我知道颜色是由LS_COLORS?控制的而且还负责在旁边LS_COLORS显示自己的名字?*或者还有什么其他原因导致这个吗?

笔记: 我验证了我的所有可执行文件都会发生这种情况,并且该字符*不是文件名的一部分(例如打开我键入的cat filename不带*字符的文件)

答案1

这是由-F/--classify标志打开引起的ls(后面的目录也是如此/,尽管这些目录可以单独添加)。看来这个选项已alias添加到您的ls.如果您想禁用它,您应该追踪它作为别名添加的位置并将其删除,或者添加--indicator-style=none.

以下选项会影响这些指标:

-F, --classify
    append indicator (one of */=>@|) to entries

--file-type
    likewise, except do not append `*'

-p, --indicator-style=slash
    append / indicator to directories

--indicator-style=WORD
    append indicator with style WORD to entry names: none (default),
    slash (-p), file-type (--file-type), classify (-F)

答案2

您可能有一个包含该选项的aliasfor 。类似于:ls-F

alias ls="ls -F"

相关内容