将两个或多个独特的变量回传到一个文本文件中[重复]。

问题描述 投票:0回答:1

该文件看起来像这样。

@echo off

set /a varOne=1
set /a varTwo=2

echo %varOne% %varTwo%>>test.txt

start test.txt

varOne和varTwo可以是任何数字。

我的问题是它没有像我期望的那样把 "1 2 "写到test.txt中。当我删除varTwo时,它看起来像这样。

@echo off

set /a varOne=1

echo %varOne%>>test.txt

start test.txt

这确实如我所料 它把 "1 "写到test.txt中。

为了让两个数字都能写入文件,我可以删除两个变量之间的空格。但是对于我的情况,我需要在变量之间有一个空格。

我如何将两个变量之间有空格的变量写入文本文件?

谢谢。

batch-file variables echo
1个回答
2
投票

你的脚本被读取 "1 2>>test.txt",所以你的输出被重定向到流 "2"。在批处理中,inout 流的范围是 0-9,所以当你在"> "或">> "前使用任何一个数字时,它们都被解释为inout流。

~工作方法 ~

@echo off

set varOne=1
set varTwo=2

echo ^%varOne% ^%varTwo%>>test.txt
@echo off

set varOne=1
set varTwo=2

(echo %varOne% %varTwo%)>>test.txt

你只需要为 "单数 "值提供这些变通方法,如果你使用两个或更多的数字,你就不需要变通方法。如果你使用两个或更多的数字,那么你就不需要变通方法......

@echo off

set varOne=123
set varTwo=456

echo %varOne% %varTwo%>>test.txt

© www.soinside.com 2019 - 2024. All rights reserved.