【发布时间】:2016-03-08 09:42:14
【问题描述】:
我想创建一个命令,列出仅包含两个字母的目录。
我该怎么做?
【问题讨论】:
我想创建一个命令,列出仅包含两个字母的目录。
我该怎么做?
【问题讨论】:
? 是一个字符的通配符。因此,以下应该有效:
ls -d ??/
-d 阻止ls 列出目录的内容,最后的/ 不包括文件。
【讨论】:
-d,对于 MacOS,需要在目录名之前指定 -d 标志。
ls -F | grep -o "^.\{2\}/$"
ls -F 按文件系统对象类型列出内容
| grep -o 过滤掉与正则表达式 ^.\{2\}/$ 不匹配的任何内容,它基本上表示“仅匹配名称中包含 2 个字符的文件夹”
【讨论】:
ls */ | awk 'length($0) < 3'
请注意,这与隐藏目录不匹配。 choroba 的答案更好,因为解析ls 的输出通常是个坏主意,但我喜欢它的可读性。
【讨论】: