使用ls别名仅列出隐藏文件(不仅是点文件)

SuitAndCape

我想使用一个ls别名(如l.)来输出一个彩色列表,该列表仅由隐藏文件和目录组成,无论它们是否以点开头。有什么建议?

预期结果示例...

## Listing all contents of $PWD
$ ls -AF
file                                directory/
.dot-file                           .dot-directory/
hidden-file                         hidden-directory/

## Listing all hidden contents of $PWD, using alias `l.`
$ l.
.dot-file                           .dot-directory/
hidden-file                         hidden-directory/

研究...

我已经看到类似问题的答案。这些答案很棒,但是并不能完全满足我的要求,因为:

细节

## Current `ls` alias
alias ls="ls -h ${COLORFLAG}"

我同时使用bashzsh

圭多

这将使用该find命令来检索点文件和设置了“隐藏”标志的文件。

匹配的文件作为参数列表馈入lsvia sed(以除去“。”结果以及前导“ ./”前缀)和xargs这样就可以指定其他ls参数(例如-l)。

alias l.="find . \( -flags +hidden -or -name '.*' \) -maxdepth 1 | sed 's/^\.\/*//' | xargs ls -d"

整个构造旨在仅列出当前目录(的-maxdepth 1参数find);如果不希望这样做,则需要引入条件检查-R选项,并相应地抑制该maxdepth选项find

例子:

$ ls -alO
total 8
drwxr-xr-x  9 guido  staff  -      306 Apr 13 22:43 .
drwxr-xr-x+ 6 guido  staff  -      204 Apr 13 19:00 ..
drwxr-xr-x  2 guido  staff  -       68 Apr 13 22:43 .hiddendir
-rw-r--r--  1 guido  staff  -        0 Apr 13 21:48 .xx
-rw-r--r--  1 guido  staff  -        0 Apr 13 21:17 file
-rw-r--r--  1 guido  staff  -       18 Apr 13 21:03 file.b
drwxr-xr-x@ 2 guido  staff  hidden  68 Apr 13 22:43 hidden2
-rw-r--r--@ 1 guido  staff  hidden   0 Apr 13 22:35 hide
drwxr-xr-x  2 guido  staff  -       68 Apr 13 21:51 tst

$ l.
.hiddendir  .xx     hidden2     hide

$ l. -alO
drwxr-xr-x  2 guido  staff  -      68 Apr 13 22:43 .hiddendir
-rw-r--r--  1 guido  staff  -       0 Apr 13 21:48 .xx
drwxr-xr-x@ 2 guido  staff  hidden 68 Apr 13 22:43 hidden2
-rw-r--r--@ 1 guido  staff  hidden  0 Apr 13 22:35 hide

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

仅显示ls别名中的隐藏文件(点文件)

(为什么)使用ls -A列出隐藏文件不好?

ls命令列出隐藏文件

不使用-(* |列出隐藏文件

使用浏览按钮从Shiny UI(不仅是目录)获取文件路径,而无需上传文件

如何递归仅列出终端中的隐藏文件

ZSH:`ls *(。)`仅列出常规文件,但是`ls *(/)`不仅列出目录

重命名目录中的文件不仅是文件夹

如何使* tree *也列出隐藏文件?

在java中转换PDF文件版本(不仅是标题版本!)

使用Java隐藏文件

Laravel价格验证仅接受正数,而不仅是0

有没有办法让ls仅显示某些目录的隐藏文件?

如何将版本号添加到HTML文件(不仅是CSS和JS文件)

如何使用“ dir”显示“ ls”显示的隐藏文件就好了?

用ls分组隐藏文件和目录

如何在ls模式匹配中包含隐藏文件?

返回Not隐藏文件

处理隐藏文件

使用Inno Setup安装隐藏文件

在系统路径中使用隐藏文件

如何使用_one_ shell遍历表达式列出所有文件(当然也包括隐藏文件!)?

如何在终端中仅显示隐藏文件?

仅排除特定目录中的隐藏文件

仅通过命令行找到隐藏文件?

使用 bash ls 命令仅根据文件的中间部分列出文件

查看隐藏文件中列出的文件而不应用文件(不是diff)。

Outlook:检测多个帐户的传入电子邮件,如何摆脱搜索文件夹本身(不仅是旧的搜索虚拟文件夹)

使用Java在Windows上隐藏文件/文件夹