我有一个批处理文件(tickets.bat
),每次创建不同的票证时,通过设置多个变量并将变量回显到文本文件,我希望票证号码增加1.我试过要通过创建number.txt
文件来执行此操作,并且每次执行循环并创建新票证时,都会将%pnumber%
设置为文本文件,然后将%number%
设置为{{1}但是%pnumber%
保持设置为0,即使%pnumber%
文件包含数字1并且没有更改。这就是我所拥有的:
number.txt
看起来我的问题是:start
cls
echo Enter Ticket Info Here:
set /p name="Name:"
echo Press Enter to Show Ticket Preview
set /a pnumber=C:\Batch\ticket\number.txt
set /a number=%pnumber%+1
echo %number% > "C:\Batch\ticket\number.txt"
echo %name% Ticket Number %number%
pause
goto start
始终设置为0.除非我错过了其他内容。基本上,我需要它始终将%pnumber%
增加1,即使您关闭批处理作业并再次打开它,这就是我使用%number%
文件的原因。它没有看到文本文件中的数字或什么?它是一行中的一个数字。谢谢。
答案 0 :(得分:0)
尝试这样:
@echo Off
:start
cls
echo Enter Ticket Info Here:
set /p name="Name:"
echo Press Enter to Show Ticket Preview
set /p pnumber=<C:\Batch\ticket\number.txt
set /a number=%pnumber%+1
echo %number% >C:\Batch\ticket\number.txt
echo %name% Ticket Number %number%
pause
goto start