【问题标题】:Batch reading a file name批量读取文件名
【发布时间】:2014-03-10 15:02:14
【问题描述】:

假设我有一个文件夹“C:/My Folder”,里面有 10 个文件。我需要知道如何将每个文件名的变量设置为单个变量,例如:

%File1%
%File2%
%File3%
%File4%
%File5%
%File6%
%File7%
%File8%
%File9%
%File10%

我查看了几个站点,但只发现将名称设置为一个变量或只为一个文件执行此操作。有谁知道我如何为单个变量做到这一点。提前致谢。

【问题讨论】:

    标签: windows variables batch-file windows-7 filenames


    【解决方案1】:
    @ECHO OFF
    SETLOCAL
    SET "sourcedir=c:\sourcedir"
    FOR /f "tokens=1*delims=:" %%a IN (
      'dir /b /a-d "%sourcedir%\*"^|findstr /n /r "." ') DO (
     SET "file%%a=%sourcedir%\%%b"   
     )
    
    SET file
    
    GOTO :EOF
    

    这应该会生成并显示列表。设置目录和文件掩码的工作。

    【讨论】:

    • 对不起,我是批处理文件掩码的新手。
    • 目录很明显,在sourcedir。文件掩码是一种选择机制,仅查找名称与模式匹配的那些文件(称为 filemask。)因此 - 例如,如果您只想要 .csv 文件,您将使用 *.csv 而不是 @987654326 @in "%sourcedir%\*"* 选择所有文件)
    • 谢谢,我想我可以解决一些问题。
    猜你喜欢
    • 1970-01-01
    • 2021-12-05
    • 1970-01-01
    • 1970-01-01
    • 2013-12-31
    • 1970-01-01
    • 1970-01-01
    • 2017-06-26
    • 2016-05-25
    相关资源
    最近更新 更多