[英]How can I read some lines of windows command line in a batch file?
假設我使用dir
commend,它返回:
02/23/2014 03:03 PM <DIR> ManageEngine
09/28/2013 02:09 PM <DIR> opt
04/30/2014 09:30 AM <DIR> Oracle
09/29/2014 12:53 PM <DIR> Program Files
09/15/2014 12:59 PM <DIR> Program Files (x86)
09/30/2014 01:10 PM <DIR> ProgramData
08/10/2014 03:06 PM <DIR> Virtual Machines
05/05/2013 12:19 PM <DIR> wis
0 File(s) 0 bytes
8 Dir(s) 35,379,425,280 bytes free
現在,我想從上一個命令行結果( dir
)中讀取第二行,並在當前命令行中使用它。
例:
del opt
我如何閱讀第二行?
您for
。 請參閱“ FOR”如何在cmd批處理文件中工作? 。 但是,你不應該被解析的輸出dir
,你可以使用,再次for
遍歷目錄:
僅目錄
如果set包含通配符(*和?),則對與set相匹配的每個目錄(而不是指定目錄中的一組文件)執行指定的命令。 語法為:
for /D {%% | %}variable in (set) do command [CommandLineOptions]
我不會顯示如何獲得集合中的第二個項目,因為那是a)瑣碎的和b)錯誤的。 集合排名是隨機的,缺少順序。
@echo off
rem use skip=n-1 where n is the line you want
for /f "skip=1 delims=" %%# in ('dir') do (
echo %%#
rem delete echo to activate deletion
echo rd /s /q "%%#"
goto :break_for
)
:break_for
如果要過濾包含opt
的行
@echo off
for /f "delims=" %%# in ('dir^|find /i "opt"') do (
echo %%#
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.