我需要这方面的帮助。
我是 bat 文件的新手。我想将一些文本文件放入 Windows 桌面上的一个文件夹中。在该文件夹中,我希望有一个可对这些文本文件运行的 bat 文件。我希望 bat 文件所做的就是将字符“$$”(不带引号,$$ 后有一个空格)添加到现有的第一行,保存文件,然后循环遍历文件夹中的其余文件。
到目前为止我有以下内容:
@echo off
set "$New_line=$$ "
for /R "C:\Desktop\TEXT\" %%A in (*.txt) do (
> "%%~dpANew_%%~nxA" echo %$New_line%
type "%%A" >> "%%~dpANew_%%~nxA"
del "%%A" 2>nul
ren "%%~dpANew_%%~nxA" "%%~nxA"
)
但是它添加了一行,其中包含我需要的字符。我不想添加一行,而是在现有的第一行前面添加字符。
答案1
如何echo
在字符串中添加 CR/LF?
> "%%~dpANew_%%~nxA" echo %$New_line%
您可以使用以下构造:
<nul (set/p _any_variable=string to emit)
来源:Echo - Windows CMD - SS64.com
因此,对于你来说,情况应该是这样的:
> "%%~dpANew_%%~nxA" (set/p _any_variable=%$New_line%)