Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/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
File 如何在批处理文件中使用txt文件中的变量_File_Batch File - Fatal编程技术网

File 如何在批处理文件中使用txt文件中的变量

File 如何在批处理文件中使用txt文件中的变量,file,batch-file,File,Batch File,我有一个包含内容的txt文件naemd as(settings.txt) SET BACKUP_DRIVE=E:\ SET BACKUP_DIRECTORY=BACKUP\ SET HOURLY_DIRECTORY=HOURLY\ SET INPUT_DIRECTORY=D:\MySQL\Data\CDR\. 我有一个bat文件,我想在其中使用这些变量来准备备份路径 SET BACKUP_PATH=%BACKUP_DRIVE%%BACKUP_DIRECTORY%%HOURLY_DIRECTOR

我有一个包含内容的txt文件naemd as(settings.txt)

SET BACKUP_DRIVE=E:\
SET BACKUP_DIRECTORY=BACKUP\
SET HOURLY_DIRECTORY=HOURLY\
SET INPUT_DIRECTORY=D:\MySQL\Data\CDR\.
我有一个bat文件,我想在其中使用这些变量来准备备份路径

SET BACKUP_PATH=%BACKUP_DRIVE%%BACKUP_DIRECTORY%%HOURLY_DIRECTORY%%CURRENT_HOUR%\
但我并没有为这条路做好准备

我试过了 在bat文件中键入settings.txt 它正在打印设置文件的内容,但没有实现。显示echo已关闭。。 如果我真的回音,那么一些问题也会出现。 请告诉我如何使用这些变量

谢谢

试试这个:

@echo off&setlocal
:: set CURRENT_HOUR for testing
set "CURRENT_HOUR=03"
for /f "delims=" %%i in (settings.txt) do %%i
SET "BACKUP_PATH=%BACKUP_DRIVE%%BACKUP_DIRECTORY%%HOURLY_DIRECTORY%%CURRENT_HOUR%\"
echo %BACKUP_PATH%
输出为:

E:\BACKUP\HOURLY\03\
试试这个:

@echo off&setlocal
:: set CURRENT_HOUR for testing
set "CURRENT_HOUR=03"
for /f "delims=" %%i in (settings.txt) do %%i
SET "BACKUP_PATH=%BACKUP_DRIVE%%BACKUP_DIRECTORY%%HOURLY_DIRECTORY%%CURRENT_HOUR%\"
echo %BACKUP_PATH%
输出为:

E:\BACKUP\HOURLY\03\

嘿,谢谢你的回复亲爱的,设置输入目录=D:\MySQL\Data\CDR\n怎么样?你可以使用它:
echo%INPUT\u DIRECTORY%
或销毁它
SET“INPUT\u DIRECTORY=“
,别担心:)是的..已经完成..但我面临一个问题,当我稍后设置路径E:\BACKUP\HOURLY\03\时……我使用的是XCopy%INPUT\u DIRECTORY%accountdetails.*%BACKUP\u路径%CDR/D/E/C/I/Q/Y,应该是“E:\BACKUP\HOURLY\03”中的CDR…但它不是添加..在E:\BACKUP\HOURLY\创建一个名为03的文件夹很简单,CDR BT CDR应该在03中…请帮助我这方面也对我有用:
XCopy”%INPUT\u DIRECTORY%accountdetails.*“%BACKUP\u PATH%CDR”/D/E/C/I/Q/Y
。这将创建
E:\BACKUP\HOURLY\03\CDR
,并将所有
accountdetails.
放入
CDR
文件夹中!好的,现在让我也在我身边试试。谢谢你的快速回复。嘿,谢谢你的回复亲爱的,关于SET INPUT\u DIRECTORY=D:\MySQL\Data\CDR\n你可以使用它:
echo%INPUT\u DIRECTORY%
或销毁它
SET“INPUT\u DIRECTORY=“
,别担心:)是的..已经完成了..但我面临一个问题,当我稍后设置路径E:\BACKUP\HOURLY\03\时……我使用的是XCopy%INPUT\u DIRECTORY%accountdetails.*%BACKUP\u路径%CDR/D/E/C/I/Q/Y,应该是“E:\BACKUP\HOURLY\03”中的CDR…但它不是添加..在E:\BACKUP\HOURLY\创建一个名为03的文件夹很简单,CDR BT CDR应该在03中…请帮助我这方面也对我有用:
XCopy”%INPUT\u DIRECTORY%accountdetails.*“%BACKUP\u PATH%CDR”/D/E/C/I/Q/Y
。这将创建
E:\BACKUP\HOURLY\03\CDR
,并将所有
accountdetails.
放入
CDR
文件夹中!好的,现在让我也在我身边试试。谢谢你的快速回复。