在MS-DOS输出中显示多个字符

问题描述

如何在MS-Dos命令中显示多个字符

例如,如果要显示以A开头的当前目录中的所有内容,则可以在CMD中键入以下命令。

int

但是,如果我想显示所有A-M怎么办?我该如何告诉计算机显示多个​​字符?

解决方法

(这是针对PowerShell的)ls命令,用于列出当前目录以及添加A*之后的目录。 因此命令是ls A*(它也会列出以a开头的名称)。
如果要使用正则表达式进行过滤

Get-ChildItem | Where-Object { $_.Name -Match 'RegularExpression' }

以字母开头的正则表达式为^[A-M]+.
-Match更改为CMatch,以区分大小写。

,

使用cmd有两种可能性:列出每个所需字母的文件:

dir /b a* b* c* d* ... m*

由于对列表进行硬编码,因此笨拙且不灵活。即使使用for循环也不是更好:

for %a in (a b c d e ... m) do @dir /b %a*

如果只需要两个或三个字母,这可能会很好。

第二种方法(更灵活,也可能更快):获取整个列表并对其进行过滤:

dir /b | findstr /rib "[a-m]"

对于非连续字母(a *,b *,m *,n *,x *,y *):

dir /b | findstr /rib "[abmnxy]"