如何ls
在使用-l
(长列表)时使用而不显示文件权限?
现在我有以下别名ls
:
alias ls='ls -lhaG --color=auto'
我已经发现一个办法 关闭到我正在寻找的内容,但它不保持语法颜色或间距。
答案1
ls -lhaG --color=always | sed -re 's/^[^ ]* //'
--color=always
使ls
始终输出颜色 ESC 代码,即使在管道到另一个程序时也是如此。
该sed
脚本删除第一个字段(权限)。
请注意,如果您$LS_OPTIONS='--color=auto'
在环境中,那么这将覆盖--color=always
命令行上的选项。在这种情况下,请像这样运行:
LS_OPTIONS= ls -lhaG --color=always | sed -re 's/^[^ ]* //'
另请注意,您可能会后悔ls
为此创建别名,因为它将使其成为 PITA,将目录列表重定向到文件或将它们通过管道传输到另一个程序,而不会在输出中获取 ESC 颜色代码。要看看这有多丑陋,请尝试ls -lhaG --color=always | sed -re 's/^[^ ]* //' | cat -A