Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.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 如何将批处理变量写入.txt文件?_Batch File_Variables - Fatal编程技术网

Batch file 如何将批处理变量写入.txt文件?

Batch file 如何将批处理变量写入.txt文件?,batch-file,variables,Batch File,Variables,因此,我正在制作一个批处理文件,它接受您的变量并将其放入一个.txt文件中。它总是在.txt文件中说“ECHO关闭”。 --------------------------------------------------------------我的代码: @echo off set /p 1="k" echo %1% @echo %1% >> 1.txt pause exit .txt文件中的输出: ECHO is off. 如果你能帮忙,我将非常感激。谢谢 %1、%2等在打开批

因此,我正在制作一个批处理文件,它接受您的变量并将其放入一个.txt文件中。它总是在.txt文件中说“ECHO关闭”。 --------------------------------------------------------------我的代码:

@echo off
set /p 1="k"
echo %1%
@echo %1% >> 1.txt
pause
exit
.txt文件中的输出:

ECHO is off.

如果你能帮忙,我将非常感激。谢谢

%1、%2等在打开批处理文件时收到变量时使用。 在本例中,我们可以使用除1、2、3等之外的任何东西,所以我使用X

@echo off
REM set /p X="K"
set /p X="Question for the user?"
echo %X%
@echo %X% >> 1.txt
pause
exit

这些数字是为命令行参数保留的。

另一个选项是将其存储为.bat,以便能够通过调用加载变量。例如:

定义变量后:

(
ECHO @ECHO OFF
ECHO Set "variable=%variable%"
ECHO GOTO :EOF
) >example.bat
然后,要检索任何存储的变量:

CALL "example.bat"
此方法将支持任意数量的变量 在田里( 和 )

如果您严格希望使用.txt,可以使用大致相同的方法存储值:

(
ECHO %var1%
ECHO %var2%
) >example.txt
并重新分配:

<example.txt (
Set /p var1=
Set /p var2=
)

诸如%0、%1、%2等变量是为脚本可能使用的参数保留的

如果这样运行脚本:

Yourscript 123
您会在1.txt文件中看到123,因为您在脚本中存储了传递的第二个参数,即变量%1或%1%

因此,为了在脚本内部提供输入的同时将数据传递给变量,您需要将变量更改为其他变量,例如:

@echo off
set /p input=Your input:
echo %input% >>1.txt

所以,我找到了一个解决办法,把它们放在括号里

(
%var%
) >> save.sav

它工作得非常好,感谢所有想帮助我的人

变量名可以包括以下任意字符:A-Z、A-Z、0-9、#$'()*+、-.?@[].`{}~名称的第一个字符不能是数字。