如何从批处理脚本中将数字 2 回显到文件中?
这不起作用:
Echo 2>> file.txt
因为2>>
是一个特殊命令。 :(
答案 0 :(得分:309)
鲜为人知的特征:重定向操作符可以在线路上的任何位置。
>>file.txt echo 2
答案 1 :(得分:62)
使用(ECHO 2)>>file.txt
。这将输出2
,没有任何空格。
答案 2 :(得分:34)
echo ^2>>file.txt
似乎对我有用。
答案 3 :(得分:27)
使用^
转义符:
Echo ^2>> file.txt
答案 4 :(得分:10)
echo.2>>text.txt
是的,这很奇怪。
答案 5 :(得分:8)
另一种方法
echo>>file.txt 2
答案 6 :(得分:4)
或者您可以使用延迟扩展
setlocal EnableDelayedExpansion
set "var=2"
echo(!var!>> file.txt
答案 7 :(得分:3)
如果您需要准确的写入,请使用此命令
(ECHO |set /p=2)>>file.txt
DMan的命令将在“2”
后面产生0x0D0A换行符答案 8 :(得分:2)
要将数字写到文件中而没有结尾的换行符,可以使用以下命令:
cmd /C set /A "2">file.txt
之所以可行,是因为set /A
在命令提示符上下文中执行(因此直接在cmd.exe
中运行时)会返回(最后)结果(没有换行符)。
如果您仍在命令提示符下工作,则可以简单地使用以下命令:
set /A "2">file.txt
尽管您不能在批处理文件中使用它,但是您需要额外的cmd /C
来强制执行正确的执行上下文。
不用说,这当然只能输出数字,或者确切地说是带符号的32位整数。
答案 9 :(得分:0)
根据this回答,如果有人想知道如何执行此操作:
echo "command1 && command2" > file.txt
在file.txt
中没有qoutes然后你这样做:
echo command1 ^&^& command2 > file.txt
在Windows Server 2003上测试。
答案 10 :(得分:-1)
逃避角色'2'
在Linux中:
echo \2>file.txt
:
echo ^2>file.txt
也可以使用
echo.2>file.txt
回音与点之间没有空格