批处理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
这次RackNerd商家提供的美国大硬盘独立服务器,数据中心位于洛杉矶multacom,可选Windows、Linux镜像系统,默认内存是64GB,也可升级至128GB内存,而且硬盘采用的是256G SSD系统盘+10个16TSAS数据盘,端口提供的是1Gbps带宽,每月提供200TB,且包含5个IPv4,如果有需要更多IP,也可以升级增加。CPU核心内存硬盘流量带宽价格选择2XE5-2640V2...
Friendhosting发布了针对“系统管理日”(每年7月的最后一个星期五)的优惠活动,针对VPS主机提供55%的优惠(相当于四五折),支持1-6个月付款使用,首付折扣非永久,优惠后最低套餐首半年7.18欧元起。这是一家保加利亚主机商,成立于2009年4月,商家提供VDS和独立服务器租用等,数据中心目前可选美国洛杉矶、保加利亚、乌克兰、荷兰、拉脱维亚、捷克和波兰等8个地区机房。下面以最低套餐为例...
spinservers是Majestic Hosting Solutions,LLC旗下站点,主营美国独立服务器租用和Hybrid Dedicated等,spinservers这次提供的大硬盘、大内存服务器很多人很喜欢。TheServerStore自1994年以来,它是一家成熟的企业 IT 设备供应商,专门从事二手服务器和工作站业务,在德克萨斯州拥有40,000 平方英尺的仓库,库存中始终有数千台...