以下代码会在文件夹中的每个.txt
文件的末尾添加文本,但是如何在每个文件的开头插入文本呢?
@echo off
for %%a in (*.txt) do type append_me >> %%a
答案 0 :(得分:1)
我不知道是否有更好的方法可以做到这一点,但你可以通过以下方式来实现:
for %i in (*.txt) do type insert_me > "%temp%\toinsert" & type "%i" >> "%temp%\toinsert" & move /Y "%temp%\toinsert" "%i"
答案 1 :(得分:0)
有几个选项,其中一些我想告诉你:
最简单的方法是使用copy
和+
(Aacini中已经建议的comment):
for %%a in ("*.txt") do (
copy "insert_me.txt"+"%%~a" "%%~a.tmp" /B
move /Y "%%~a.tmp" "%%~a"
)
依靠重定向,您可以执行此操作以插入文本:
for %%a in ("*.txt") do (
> "%%~a.tmp" type "insert_me.txt"
>>"%%~a.tmp" type "%%~a"
move /Y "%%~a.tmp" "%%~a"
)
或者,使用copy
代替>
- 重定向。
for %%a in ("*.txt") do (
copy "insert_me.txt" "%%~a.tmp"
>>"%%~a.tmp" type "%%~a"
move /Y "%%~a.tmp" "%%~a"
)