批处理for的变量下Batch for variables
Batch: FOR variables (originality)
(two) extended variables
Extended variables can enhance the FOR command. Here is a copyof the official help file.
The replacement of the FOR variable reference has been enhanced.You can now use the following options syntax:
~I - delete any quotes (") . Expand%I
%%~fI - extends%I to a fully qualified path name (full pathn ame)
Only%%~dI - expands%I to a drive letter (letter display only)%%~pI - extends the%I to only one path (only the path isextracted)
%%~nI-extends the%I to only one file name (only the file name)%%~xI - extends the%I to only one file extension (extractingonly the suffix format)
The%%~sI - extended path contains only short names (longf ilenames are reduced)
%%~aI - extends%I to the file properties of the file (a readonly, H hide)
%%~tI - extends%I to the date / time of the file (creation,modification time)
%%~zI - extends%I to the size of the file (KB)
%%~$PATH:I - finds the column in the directory of the pathenvironment variable and extends the%I to the first fullyqualified name found. If the environment variable name is notdefined, or the file is not found, the composite key is expandedto an empty string.
You can combine modifiers to get multiple results:
%%~dpI - extends%I to a drive letter and path only
%%~nxI - extends%I to only one file name and extension%%~fsI - extends only%I to a full pathname with a short name%%~dp$PATH:i - finds the column in the directory of the pathenvironment variable, and extends the%I to the first driveletter and path found.
%%~ftzaI - extend%I to DIR similar to the output lineIn the examples above,%%I and PATH can be replaced by othervalid values. %%~ grammar with a valid variable name FORtermination. Selecting uppercase variable names like%%I iseasier to read and avoid confusing combinations of keys thatare not case sensitive.
When using the FOR command in a batch file, specify variablesusing%%variable instead of%variable. Variable names are casesensitive, so%i is different from%I. At the same time, no morethan 52 are in use.
Many people do not understand the FOR command for officialdocument translation too be beneath the human character. Hereyou just catch the use of the above eleven expansion variables,and the specific role, and so you used, and then check it.1, the use of the option ~I
Example: observe double quotes.
Create text. Delete quote.Txt":
"What' s your name"
"The last name is Zhu, and the name is" Liye ""
"Pig upright leaves?""
"Uh huh!"
"How old is this year?""
"16. "
"January 15, 2009. ""
Ba "____" Ch
"1+1" =?"
''
Code
@echo off
FOR, /F, delims=,%%i, IN (delete quote.Txt) , DO, echo,%%~iPause
Operation result:
1) double quotes in Chinese, none of them disappear. Proof thatit is not valid for double quotation marks in chinese. Such as"16". "
2) the external state of the double quotes English deleted (5to dangerous curtain curtain good song Lai chip H? /span> "1+1""
3) single quotes in English status have not been deleted. Such
Explain:
This command is suitable for extracting strings from otherplaces and deleting the most enclosed double quotes in the
string for other commands. Look at the following example:@echo off
For%%a in ("great Chinese people hooray, hooray, ten millionyears old") do echo.%%~a
Pause>nul
Operation result:
Long live the great Chinese people! Hooray!
Explain:
If you do not use double quotes, you will display them insections. Double quotation marks using Chinese status, withdouble quotation marks. But the double quotation marks ("" """") in English states are very clean.
2, the use of other options
Example: only the file name is checked:
@echo off
For%%i in do echo%%~ni (. *)
Pause>nul
Explain:
%%~ni can extract file names, and using this command to extractsongs from your computer will be the best choice.
Cases:
View date size file name:
@echo off
For%%i in do echo%%~ztni (. *)
Pause>nul
Explain:
Sometimes you want to look at the date, size, property, etc.of a file, and you can use the add in variables together.This might be useful in antivirus.
Although the expansion variables are many, but the usage isbasically the same, they can be replaced by other extendedvariables instead of%%~ni.
Note that the last letter I of the variable is not fixed, whatis the input variable, and what it should be.
For example, using%%~$PATH:I:
@echo off
For /r%%a in do echo%%~$PATH:a (. *)
Pause>nul
Explain:
The first%%a uses a, then the second%%a is still using a, anddoes not change because of the addition of the extended variable~$PATH. Can not be born hard move formula, all use I.Extended environment variables are often used to extract keycharacters, or to exclude other redundant factors.
(three) system variables
(temporarily omitted)
Third section FOR DO
I. overview
DO followed by one or a set of commands. A command that indicatesthe execution of each FOR cycle.
Sometimes the commands behind DO are too complex and need tobe bracketed together to represent a whole.
Two, type
1, an order:
For,%%i, in (. . . , o*.mp3) , do, echo,%%i
2, a set of commands:
For, /r, d: ,%%i, in (QQ.exe) , do, if, exist,%%i, , start,%%i1, need brackets:
@echo off
Color 0A
For, /l,%%a, in (1,2,8) do
For, /l,%%b, in (3, 3, 18) do
For, /l,%%c, in (100, -15,30) do
Echo%%a%%b%%c
)
)
)
Pause
Three, use
(omitted) see the fifth section of the FOR command synthesisapplication
今天遇到一个网友,他在一个服务器中搭建有十几个网站,但是他之前都是采集站点数据很大,但是现在他删除数据之后希望设置可能有索引的文章给予404跳转页面。虽然他程序有默认的404页面,但是达不到他引流的目的,他希望设置统一的404页面。实际上设置还是很简单的,我们找到他是Nginx还是Apache,直接在引擎配置文件中设置即可。这里有看到他采用的是宝塔面板,直接在他的Nginx中设置。这里我们找到当前...
racknerd怎么样?racknerd最近发布了一些便宜美国服务器促销,包括大硬盘服务器,提供120G SSD+192TB HDD,有AMD和Intel两个选择,默认32G内存,1Gbps带宽,每个月100TB流量,5个IP地址,月付$599。价格非常便宜,需要存储服务器的朋友可以关注一下。RackNerd主要经营美国圣何塞、洛杉矶、达拉斯、芝加哥、亚特兰大、新泽西机房基于KVM虚拟化的VPS、...
HostKvm也发布了开年促销方案,针对香港国际和美国洛杉矶两个机房的VPS主机提供7折优惠码,其他机房业务提供8折优惠码。商家成立于2013年,提供基于KVM架构的VPS主机,可选数据中心包括日本、新加坡、韩国、美国、中国香港等多个地区机房,均为国内直连或优化线路,延迟较低,适合建站或者远程办公等。下面列出几款主机配置信息。美国洛杉矶套餐:美国 US-Plan1CPU:1core内存:2GB硬盘...