我需要在一行中获得文件夹列表

问题描述 投票:0回答:1

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

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

结果是:

AAA
BBB
CCC
DDD

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

有人可以帮忙吗?

command-line command command-prompt
1个回答
0
投票

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循环结束后,在同一行中退出打印很重要。)>

© www.soinside.com 2019 - 2024. All rights reserved.