如何使用 .bat 文件将文本插入多个文本文件?

How to insert text into multiple text files using a .bat file?

我在创建一个可以同时将文本插入多个文本文件的批处理文件时遇到了麻烦。

我现在能做的是我放在批处理文件上的一个文件被插入了文本“我正在编程”。 但我想拖动多个文本文件,并且所有 it/each 每个文本文件都会插入该文本。

@echo off
echo I AM PROGRAMMING> "%~1"

或者如果有某种方式可以这样做,特定 place/folder 中的每个文本文件都会插入特定文本(例如“我正在编程”)?

我找到了我的解决方案!

@echo off
cd "yourfilepath"
for %%a in (*.txt) do (echo I AM PROGRAMMING> %%a)

我合并了这两个有用的信息。

How can I use a batch file to write to a text file?

您的解决方案处理文件夹中的每个匹配文件,但您说 I would like to drag multiple text files

处理“多个拖拽文件”很容易:%*是“所有参数”。只需使用一个简单的 for 循环来处理它们中的每一个:

@echo off
for %%a in (%*) do echo I AM PROGRAMMING> "%%~a"

(请注意,这会用一个新行覆盖文件;如果要追加,请使用 >> 而不是 >

如果你想处理“我拖动的一个文件的文件夹中的所有.txt文件”:

for %%a in ("%~dp1\*.txt") do ...

或“我拖动的一个文件的同一文件夹中的所有文件,并且与拖动的文件具有相同的扩展名”:

for %%a in ("%~dp1*%~x1") do  ...