批处理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
CUBECLOUD(魔方云)成立于2016年,亚太互联网络信息中心(APNIC)会员,全线产品均为完全自营,专业数据灾备冗余,全部产品均为SSD阵列,精品网络CN2(GIA) CU(10099VIP)接入,与当今主流云计算解决方案保持同步,为企业以及开发者用户实现灵活弹性自动化的基础设施。【夏日特促】全场产品88折优惠码:Summer_2021时间:2021年8月1日 — 2021年8月8日香港C...
ZJI是成立于2011年原Wordpress圈知名主机商—维翔主机,2018年9月更名为ZJI,主要提供香港、日本、美国独立服务器(自营/数据中心直营)租用及VDS、虚拟主机空间、域名注册业务。本月商家针对香港阿里云线路独立服务器提供月付立减270-400元优惠码,优惠后香港独立服务器(阿里云专线)E3或者E5 CPU,SSD硬盘,最低每月仅480元起。阿里一型CPU:Intel E5-2630L...
80vps怎么样?80vps最近新上了香港服务器、美国cn2服务器,以及香港/日本/韩国/美国多ip站群服务器。80vps之前推荐的都是VPS主机内容,其实80VPS也有独立服务器业务,分布在中国香港、欧美、韩国、日本、美国等地区,可选CN2或直连优化线路。如80VPS香港独立服务器最低月付420元,美国CN2 GIA独服月付650元起,中国香港、日本、韩国、美国洛杉矶多IP站群服务器750元/月...