我有一个批处理文件,其中包含一行代码
set /p bom=<%YUI_FOLDER%\bom
我无法理解这行做什么
答案 0 :(得分:5)
set /p var=[prompt]
是批处理文件中从用户检索输入的常用方法,显示提示(如果存在)并将用户响应存储在变量中。
set /p
从流中读取数据,通常是控制台,但管道或重定向可以以相同的方式重新加载。
在这种情况下,set /p
将从重定向的文件中读取其数据。 <
是输入重定向器运算符。它表示要读取的流不是控制台,而是在操作符之后指示的文件。
在这种情况下,文件名为bom
,位于文件夹中。此文件夹的路径存储在环境变量%YUI_FOLDER%
所以set /p bom=<%YUI_FOLDER%\bom
表示:从变量bom
中引用的文件夹中读取文件%YUI_FOLDER%
的内容,并将检索到的数据存储到bom
变量中
set /p
将从文件中检索数据,直到文件末尾,行尾或读取缓冲区已满,首先发生的事情。
答案 1 :(得分:-1)
在this script中,我找到了一段带注释的代码,几乎可以解释该行应该做什么:
REM Unicode transformation.
REM Report files should be readable in Windows Notepad editor.
REM Example DOS characters: ”„á‚
REM Example WIN characters: öäüßé
REM Create Unicode files with BOM.
REM Having set the current codepage to 1252, ...
REM then the UTF-16LE BOM can be created by the command ...
REM SET /P BOM=ÿþ<NUL 2>NUL >"UnicodeFile.txt"
因此,在YUI Compressor Bash Script Manager中,此行用于创建变量bom
,检查它是utf8
还是cp1252
还是其他......