我是批处理脚本编写的新手,必须更改批处理代码中的一些行。
我需要了解以下命令行的含义:
for /f %%i in ('logicals -t file_location') do set DIR=%%i
它获取命令logicals -t file_location
的结果,并将结果的第一部分(用空格分隔)设置为DIR
变量。以下是的更多信息
请记住,logicals
命令不是windows中的本机命令,nut是一个外部实用程序。
这是将程序输出分配给变量的Windows批处理。
有关详细信息,请参阅将命令的输出读取到批处理文件变量中。
您可以通过键入for/来了解有关批处理命令的所有信息?在命令提示符中。
需要考虑的一点是,与仅在命令行上运行命令相比,for命令在批处理文件中的工作方式略有不同,因为您必须将%%字符加倍。
对于这个问题,这个命令所做的是运行命令'logicals -t file_location'
,然后该命令的每一行输出(我认为它是路径说明符)作为参数传递给dir
命令。
for /f
:循环命令:针对一组文件-有条件地对每个项执行一个命令。
语法:
FOR /F ["options"] %%parameter IN (filenameset) DO command
FOR /F ["options"] %%parameter IN ("Text string to process") DO command
来源:http://ss64.com/nt/for_f.html