Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 创建新批处理文件的批处理文件_Batch File - Fatal编程技术网

Batch file 创建新批处理文件的批处理文件

Batch file 创建新批处理文件的批处理文件,batch-file,Batch File,我需要一个批处理文件master.bat,它在执行时创建一个新的批处理文件children.bat,其中包含给定的文档: 代码是 @回音 用于/f代币的pre.txt=3,4%%a英寸 “网络统计工作站^查找自” 做 回声%%a%%b 出口 要创建包含该代码的新批处理文件,请执行以下操作: 只需回显代码并将其发送到所需文件> 要以有效的方式运行代码,请执行以下操作: 创建并运行批处理文件 刚刚测试,这将工作。在通常与语法冲突的字符之前添加“^”,将强制脚本忽略它: Ps.抱歉,时间有点晚了lol

我需要一个批处理文件master.bat,它在执行时创建一个新的批处理文件children.bat,其中包含给定的文档: 代码是

@回音

用于/f代币的pre.txt=3,4%%a英寸 “网络统计工作站^查找自” 做 回声%%a%%b 出口

要创建包含该代码的新批处理文件,请执行以下操作:

只需回显代码并将其发送到所需文件>

要以有效的方式运行代码,请执行以下操作:

创建并运行批处理文件

刚刚测试,这将工作。在通常与语法冲突的字符之前添加“^”,将强制脚本忽略它:


Ps.抱歉,时间有点晚了lol

我这样做了,但它创建了一个新的bat文件mybat.bat,其中没有文本。它产生了一个空蝙蝠。你有什么改变吗?我刚刚将上面的代码复制并粘贴到CMD窗口中,并从批处理文件运行它-两者都按预期工作文件mybat.bat应在运行时创建一个新文件pre.txt,该文件在代码中缺失,因此您需要一个批处理文件来创建一个名为children.bat的文件,该文件包含您发布的代码,然后运行该新批处理文件,哪个应该创建文本文件?为什么不直接从原始批处理文件中运行代码,而不是将其写入新的children.bat?不,伙计,这是客户机特别提到的要求
echo @echo off "pre.txt" (for /f "tokens=3,4" %%a in ( 'net statistics workstation ^| find "since"' ) do ( echo %%a %%b )) exit > mybat.bat
for /f "tokens=3,4" %%a in ( 'net statistics workstation ^| find "since"' ) do ( echo %%a %%b >> pre.txt )
echo @echo off > children.bat
echo for /f "tokens=3,4" %%%%a in ( 'net statistics workstation ^^^| find "since"' ) do ( echo %%%%a %%%%b ^>^> pre.txt ) >> children.bat && children.bat
@echo off
title Just a sandbox test
color f
:start
cls
set "file=%userprofile%\Desktop\children.bat
(
echo ^@echo off
echo ^"pre.txt^" ^(for /f ^"tokens=3,4^" ^%^%a in ^( ^'net statistics 
workstation ^^^| find echo ^"since^"^' ^) do ^( echo ^%^%a ^%^%b ^)^) exit
) >%file%

::rest of your code goes here I guess
pause