命令行:从批处理文件中的echo数据中删除文本

时间:2014-10-30 13:26:23

标签: windows batch-file command-line-arguments

在批处理文件中,我试图弄清楚如何删除命令echo数据的前/后字符。不是专门用于目录,而是为了举例。有没有办法在数据写入文件时去除数据前面或后面的字符?

示例:dir /b *.txt >dir.txt

此结果将保存目录的文件名:         FILENAME.TXT         thisistest.txt         hardquestion.txt

但是我想删除文件名的最后4个字符,以便它只回显到 dir.txt 文件名:         文件名         thisistest         hardquestion

1 个答案:

答案 0 :(得分:2)

>dir.txt (for %%a in (*.txt) do echo %%~na)

for命令将迭代指定的文件集,对于每个文件,对文件的引用存储在可替换参数(在本例中为%%a)和{{之后的代码1}}子句已执行。

在这种情况下,为每个文件执行的代码是do,回显echo %%~na引用的文件的名称

所有%%a命令输出都被重定向到最终文件。