【问题标题】:I need to get a list of folders in one line我需要在一行中获取文件夹列表
【发布时间】:2020-04-14 23:22:32
【问题描述】:

我有这行(我知道的很简单):

FOR /f "delims=" %%G in (List.txt) DO ECHO %%G

结果是:

AAA
BBB
CCC
DDD

(应该这样) 但我需要这个输出: **AAA|BBB|CCC|DDD**

有人可以帮忙吗?

【问题讨论】:

    标签: command-line command command-prompt


    【解决方案1】:

    Possible duplicate?但是,以下批处理文件也可以提供帮助:

    @ECHO OFF
    SETLOCAL EnableExtensions DisableDelayedExpansion
    
    echo --- Original:
    FOR /f "delims=" %%G in (List.txt) DO ECHO %%G
    
    echo --- One line:
    FOR /f "delims=" %%G in (List.txt) DO <NUL set /P "=%%G|"
    echo(
    
    echo --- Another one line:
    set "_FirstLine="
    FOR /f "delims=" %%G in (List.txt) DO ( 
      if defined _FirstLine (
        <NUL set /P "=|%%G"
      ) else (
        <NUL set /P "=%%G"
        set "_FirstLine=done"
      )
    )
    echo(
    

    输出: D:\bat\SO\59459244.bat

    --- Original:
    AAA
    BBB
    CCC
    DDD
    --- One line:
    AAA|BBB|CCC|DDD|
    --- Another one line:
    AAA|BBB|CCC|DDD
    

    请注意,echo( 命令会在控制台打印一个空行(重要的是要在 for 循环结束后在同一行中退出打印)。

    【讨论】:

      猜你喜欢
      • 2014-08-19
      • 2013-10-04
      • 1970-01-01
      • 2015-11-07
      • 1970-01-01
      • 2015-04-06
      • 1970-01-01
      • 2013-10-24
      • 1970-01-01
      相关资源
      最近更新 更多