批量创建包含每个文件的文件名的txt文件

时间:2014-11-22 20:12:47

标签: batch-file cmd

我们说我有一个文件夹,其中包含一堆扩展名为.dat的文件。我想编写一个批处理文件,对于文件夹中的每个.dat文件,都会创建一个相应的.txt文件。每个.txt应该包含其中的.dat对应文件的文件名,以及它自己的文件名。如果我有:

123.dat ABC.dat zyx.dat

批处理文件应该创建填充文件: 123.txt,包含文本" 123.dat" ABC.txt,包含文字" ABC.dat" zyx.txt,包含文本" zyx.dat"

我该怎么做?我尝试过使用以下行:

  

for %% x in(* .dat)do type %% x> %%〜nx.txt

以及这一个:

  

对于(* .dat)中的%% f,请键入%% f> %% f.txt

两者都为每个.dat文件生成.txt文件,但是它们将相应的.dat文件的内容复制到.txt,而不是在其中写入文件名。

3 个答案:

答案 0 :(得分:1)

我没有测试它,但这应该有用。

setlocal EnableDelayedExpansion
for /f %%a in ('dir /b /a-d *.dat') do (
  echo %%~nxa>%%~na.txt
)
pause

答案 1 :(得分:0)

在powershell中

答案 2 :(得分:0)

这是我的项目编码,它应该在您的计算机上运行,​​它创建您想要从批处理到txt的内容

@echo off 颜色0a :PRO4 CLS 回声请输入你的话 set / p word1 = 转到保存

:保存 echo%word1%> project.txt