代码之家  ›  专栏  ›  技术社区  ›  John U

Windows批处理脚本中的通配符*

  •  0
  • John U  · 技术社区  · 6 年前

    我想使用*通配符列出Windows目录中的所有sas程序文件。所以我发出命令 但是当我这样做时,命令也会列出所有sas数据集和目录,因为它们分别具有扩展名.sas7bdat和.sas7bcat。如何将dir命令限制为只列出sas程序文件?谢谢。

    1 回复  |  直到 6 年前
        1
  •  0
  •   Tom    6 年前

    这里也有类似的问题。 https://superuser.com/questions/825615/windows-wildcards-with-files-having-more-than-3-characters-extensions

    这条线索的答案是你不能改变行为。有两个建议的解决方案:

    • 添加步骤以筛选dir命令的结果。

    如果您在SAS中执行此操作,则可以使用如下程序:

    data want ;
       infile 'dir /b *.sas' pipe truncover ;
       input filename $200. ;
       if lowcase(scan(filename,-1,'.'))='sas' ;
    run;