批处理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
目前,我们都在用哪个FTP软件?喜欢用的是WinSCP,是一款免费的FTP/SFTP软件。今天在帮助一个网友远程解决问题的时候看到他用的是FlashFXP FTP工具,这个工具以前我也用过,不过正版是需要付费的,但是网上有很多的绿色版本和破解版本。考虑到安全的问题,个人不建议选择破解版。但是这款软件还是比较好用的。今天主要是遇到他的虚拟主机无法通过FTP连接主机,这里我就帮忙看看到底是什么问题。一...
华为云818上云活动活动截止到8月31日。1、秒杀限时区优惠仅限一单!云服务器秒杀价低至0.59折,每日9点开抢秒杀抢购活动仅限早上9点开始,有限量库存的。2G1M云服务器低至首年69元。2、新用户折扣区优惠仅限一单!购云服务器享3折起加购主机安全及数据库。企业和个人的优惠力度和方案是不同的。比如还有.CN域名首年8元。华为云服务器CPU资源正常没有扣量。3、抽奖活动在8.4-8.31日期间注册并...
VPSDime是2013年成立的国外VPS主机商,以大内存闻名业界,主营基于OpenVZ和KVM虚拟化的Linux套餐,大内存、10Gbps大带宽、大硬盘,有美国西雅图、达拉斯、新泽西、英国、荷兰机房可选。在上个月搞了一款达拉斯Linux系统VPS促销,详情查看:VPSDime夏季促销:美国达拉斯VPS/2G内存/2核/20gSSD/1T流量/$20/年,此次推出一款Windows VPS,依然是...