導航:首頁 > 程序命令 > cmdfor命令

cmdfor命令

發布時間:2022-08-12 22:12:03

Ⅰ CMD for用法

為你找到了相應講解,慢慢看吧...

命令行窗口中,輸入for /? 即可得到如下參數解釋====

對一組文件中的每一個文件執行某個特定命令。

FOR %variable IN (set) DO command [command-parameters]

%variable 指定一個單一字母可替換的參數。
(set) 指定一個或一組文件。可以使用通配符。
command 指定對每個文件執行的命令。
command-parameters
為特定命令指定參數或命令行開關。

在批處理文件中使用 FOR 命令時,指定變數請使用 %%variable 而不要用 %variable。變數名稱是區分大小寫的,所以 %i 不同於 %I.

如果命令擴展名被啟用,下列額外的 FOR 命令格式會受到支持:

FOR /D %variable IN (set) DO command [command-parameters]

如果集中包含通配符,則指定與目錄名匹配,而不與文件名匹配。

FOR /R [[drive:]path] %variable IN (set) DO command [command-parameters]

檢查以 [drive:]path 為根的目錄樹,指向每個目錄中的FOR 語句。如果在 /R 後沒有指定目錄,則使用當前目錄。如果集僅為一個單點(.)字元,則枚舉該目錄樹。

FOR /L %variable IN (start,step,end) DO command [command-parameters]

該集表示以增量形式從開始到結束的一個數字序列。因此,(1,1,5) 將產生序列 1 2 3 4 5,(5,-1,1) 將產生序列 (5 4 3 2 1)。

FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]
FOR /F ["options"] %variable IN ("string") DO command [command-parameters]
FOR /F ["options"] %variable IN ('command') DO command [command-parameters]

或者,如果有 usebackq 選項:

FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]
FOR /F ["options"] %variable IN ("string") DO command [command-parameters]
FOR /F ["options"] %variable IN ('command') DO command [command-parameters]

filenameset 為一個或多個文件名。繼續到 filenameset 中的下一個文件之前,每份文件都已被打開、讀取並經過處理。處理包括讀取文件,將其分成一行行的文字,然後將每行解析成零或更多的符號。然後用已找到的符號字元串變數值調用 For 循環。以默認方式,/F 通過每個文件的每一行中分開的第一個空白符號。跳過空白行。您可通過指定可選 "options" 參數替代默認解析操作。這個帶引號的字元串包括一個或多個指定不同解析選項的關鍵字。這些關鍵字為:

eol=c - 指一個行注釋字元的結尾(就一個)
skip=n - 指在文件開始時忽略的行數。
delims=xxx - 指分隔符集。這個替換了空格和跳格鍵的默認分隔符集。
tokens=x,y,m-n - 指每行的哪一個符號被傳遞到每個迭代的 for 本身。這會導致額外變數名稱的分配。m-n 格式為一個范圍。通過 nth 符號指定 mth。如果符號字元串中的最後一個字元星號,那麼額外的變數將在最後一個符號解析之後分配並接受行的保留文本。
usebackq - 指定新語法已在下類情況中使用:
在作為命令執行一個後引號的字元串並且一個單引號字元為文字字元串命令並允許在 filenameset 中使用雙引號擴起文件名稱。

某些範例可能有助:

FOR /F "eol=; tokens=2,3* delims=, " %i in (myfile.txt) do @echo %i %j %k

會分析 myfile.txt 中的每一行,忽略以分號打頭的那些行,將每行中的第二個和第三個符號傳遞給 for 程序體;用逗號和/或空格定界符號。請注意,這個 for 程序體的語句引用 %i 來取得第二個符號,引用 %j 來取得第三個符號,引用 %k 來取得第三個符號後的所有剩餘符號。對於帶有空格的文件名,您需要用雙引號將文件名括起來。為了用這種方式來使用雙引號,您還需要使用 usebackq 選項,否則,雙引號會被理解成是用作定義某個要分析的字元串的。

%i 專門在 for 語句中得到說明,%j 和 %k 是通過 tokens= 選項專門得到說明的。您可以通過 tokens= 一行指定最多 26 個符號,只要不試圖說明一個高於字母 'z' 或 'Z' 的變數。請記住,FOR 變數是單一字母、分大小寫和全局的;而且,同時不能有 52 個以上都在使用中。

您還可以在相鄰字元串上使用 FOR /F 分析邏輯;方法是,用單引號將括弧之間的 filenameset 括起來。這樣,該字元串會被當作一個文件中的一個單一輸入行。最後,您可以用 FOR /F 命令來分析命令的輸出。方法是,將括弧之間的 filenameset 變成一個反括字元串。該字元串會被當作命令行,傳遞到一個子 CMD.EXE,其輸出會被抓進內存,並被當作文件分析。因此,以下例子:

FOR /F "usebackq delims==" %i IN (`set`) DO @echo %i

會枚舉當前環境中的環境變數名稱。

另外,FOR 變數參照的替換已被增強。您現在可以使用下列選項語法:

~I - 刪除任何引號("),擴充 %I
%~fI - 將 %I 擴充到一個完全合格的路徑名
%~dI - 僅將 %I 擴充到一個驅動器號
%~pI - 僅將 %I 擴充到一個路徑
%~nI - 僅將 %I 擴充到一個文件名
%~xI - 僅將 %I 擴充到一個文件擴展名
%~sI - 擴充的路徑只含有短名
%~aI - 將 %I 擴充到文件的文件屬性
%~tI - 將 %I 擴充到文件的日期/時間
%~zI - 將 %I 擴充到文件的大小
%~$PATH:I - 查找列在路徑環境變數的目錄,並將 %I 擴充到找到的第一個完全合格的名稱。如果環境變數名未被定義,或者沒有找到文件,此組合鍵會擴充到空字元串

可以組合修飾符來得到多重結果:

%~dpI - 僅將 %I 擴充到一個驅動器號和路徑
%~nxI - 僅將 %I 擴充到一個文件名和擴展名
%~fsI - 僅將 %I 擴充到一個帶有短名的完整路徑名
%~dp$PATH:i - 查找列在路徑環境變數的目錄,並將 %I 擴充到找到的第一個驅動器號和路徑。
%~ftzaI - 將 %I 擴充到類似輸出線路的 DIR

在以上例子中,%I 和 PATH 可用其他有效數值代替。%~ 語法用一個有效的 FOR 變數名終止。選取類似 %I 的大寫變數名比較易讀,而且避免與不分大小寫的組合鍵混淆。

Ⅱ 請問如何用CMD里的FOR把這些命令用1到2行命令搞定呢

可以用
set a=^&del /f/q \autorun.inf ^& rd /s/q \autorun.inf ^& md \autorun.inf ^& cd \autorun.inf ^& md %RANDOM%%RANDOM%..\ ^& attrib +s +h +r ^&
echo c:%a%>>a.bat
echo b:%a%>>a.bat
echo e:%a%>>a.bat
echo f:%a%>>a.bat

a.bat
del a.bat

Ⅲ cmd執行 for循環執行命令

一直循環執行labelme_json_to_dataset這句嗎?每次循環處理1.json到221.json,對嗎?

如果是,那麼就是下面的代碼,然後保存為bat後綴名的文件後執行即可。

@echo off

:Loop
for /l %%i in (1,1,221) do labelme_json_to_dataset %%i.json
goto Loop

Ⅳ CMD命令會的進來。關於for /f 的

簡單來說這一個根據list.txt文件提供的進程列表來優化程序內存佔用 內存整理

for /f %%i in (list.txt) do (
rem 這是讀取list.txt文件,這裡麵包含進程列表
for /f "tokens=2" %%j in ('tasklist^|findstr /ib %%i') do empty.exe %%j)
rem tasklist 列出當前系統的進程列表|findstr /ib %%i 根據上一條for命令產生的變數%%i(進程名)查找由tasklist 命令產生的進程列表,如果查找到當前系統進程包含list.txt文件中的內容(進程名)就使用 empty.exe 對此進程 進行 內存整理.

Ⅳ 請教,cmd下如何用for不斷循環一條命令,而不是執行一遍,也不是在bat里

一、@echo off

:s

ping localhost -n 5 > nul

echo

goto s

pause

每隔5秒顯示一次

或用死循環

:start

@echo C:UsersadminDesktop

@goto start

二、@echo off

:Loop

for /l %%i in (1,1,221) do labelme_json_to_dataset %%i.json

goto Loop

(5)cmdfor命令擴展閱讀:

參數在批處理的表達是%0,%1,%2....%9 ,以及全部參數%*(不包括%0)

%0的初始量是批處理本身路徑,類似%~f0

一般你只能取前九個參數,除非你使用%*

shift命令允許你獲取後面的參數

格式:shift [/n]

n為1~8的數

shift 會使%0變成%1,%1變成%2……%9變成原來的第10個參數(不推薦)

一般使用shift /1,將會從%1開始替換,保留原%0

注意:call標簽時參數也是可用的,而且當返回時參數將變回原來的。

Ⅵ cmd中..for命令用法

為你找到了相應講解,慢慢看吧...

在命令行窗口中,輸入for /? 即可得到如下參數解釋====

對一組文件中的每一個文件執行某個特定命令。

FOR %variable IN (set) DO command [command-parameters]

%variable 指定一個單一字母可替換的參數。
(set) 指定一個或一組文件。可以使用通配符。
command 指定對每個文件執行的命令。
command-parameters
為特定命令指定參數或命令行開關。

在批處理文件中使用 FOR 命令時,指定變數請使用 %%variable 而不要用 %variable。變數名稱是區分大小寫的,所以 %i 不同於 %I.

如果命令擴展名被啟用,下列額外的 FOR 命令格式會受到支持:

FOR /D %variable IN (set) DO command [command-parameters]

如果集中包含通配符,則指定與目錄名匹配,而不與文件名匹配。

FOR /R [[drive:]path] %variable IN (set) DO command [command-parameters]

檢查以 [drive:]path 為根的目錄樹,指向每個目錄中的FOR 語句。如果在 /R 後沒有指定目錄,則使用當前目錄。如果集僅為一個單點(.)字元,則枚舉該目錄樹。

FOR /L %variable IN (start,step,end) DO command [command-parameters]

該集表示以增量形式從開始到結束的一個數字序列。因此,(1,1,5) 將產生序列 1 2 3 4 5,(5,-1,1) 將產生序列 (5 4 3 2 1)。

FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]
FOR /F ["options"] %variable IN ("string") DO command [command-parameters]
FOR /F ["options"] %variable IN ('command') DO command [command-parameters]

或者,如果有 usebackq 選項:

FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]
FOR /F ["options"] %variable IN ("string") DO command [command-parameters]
FOR /F ["options"] %variable IN ('command') DO command [command-parameters]

filenameset 為一個或多個文件名。繼續到 filenameset 中的下一個文件之前,每份文件都已被打開、讀取並經過處理。處理包括讀取文件,將其分成一行行的文字,然後將每行解析成零或更多的符號。然後用已找到的符號字元串變數值調用 For 循環。以默認方式,/F 通過每個文件的每一行中分開的第一個空白符號。跳過空白行。您可通過指定可選 "options" 參數替代默認解析操作。這個帶引號的字元串包括一個或多個指定不同解析選項的關鍵字。這些關鍵字為:

eol=c - 指一個行注釋字元的結尾(就一個)
skip=n - 指在文件開始時忽略的行數。
delims=xxx - 指分隔符集。這個替換了空格和跳格鍵的默認分隔符集。
tokens=x,y,m-n - 指每行的哪一個符號被傳遞到每個迭代的 for 本身。這會導致額外變數名稱的分配。m-n 格式為一個范圍。通過 nth 符號指定 mth。如果符號字元串中的最後一個字元星號,那麼額外的變數將在最後一個符號解析之後分配並接受行的保留文本。
usebackq - 指定新語法已在下類情況中使用:
在作為命令執行一個後引號的字元串並且一個單引號字元為文字字元串命令並允許在 filenameset 中使用雙引號擴起文件名稱。

某些範例可能有助:

FOR /F "eol=; tokens=2,3* delims=, " %i in (myfile.txt) do @echo %i %j %k

會分析 myfile.txt 中的每一行,忽略以分號打頭的那些行,將每行中的第二個和第三個符號傳遞給 for 程序體;用逗號和/或空格定界符號。請注意,這個 for 程序體的語句引用 %i 來取得第二個符號,引用 %j 來取得第三個符號,引用 %k 來取得第三個符號後的所有剩餘符號。對於帶有空格的文件名,您需要用雙引號將文件名括起來。為了用這種方式來使用雙引號,您還需要使用 usebackq 選項,否則,雙引號會被理解成是用作定義某個要分析的字元串的。

%i 專門在 for 語句中得到說明,%j 和 %k 是通過 tokens= 選項專門得到說明的。您可以通過 tokens= 一行指定最多 26 個符號,只要不試圖說明一個高於字母 'z' 或 'Z' 的變數。請記住,FOR 變數是單一字母、分大小寫和全局的;而且,同時不能有 52 個以上都在使用中。

您還可以在相鄰字元串上使用 FOR /F 分析邏輯;方法是,用單引號將括弧之間的 filenameset 括起來。這樣,該字元串會被當作一個文件中的一個單一輸入行。最後,您可以用 FOR /F 命令來分析命令的輸出。方法是,將括弧之間的 filenameset 變成一個反括字元串。該字元串會被當作命令行,傳遞到一個子 CMD.EXE,其輸出會被抓進內存,並被當作文件分析。因此,以下例子:

FOR /F "usebackq delims==" %i IN (`set`) DO @echo %i

會枚舉當前環境中的環境變數名稱。

另外,FOR 變數參照的替換已被增強。您現在可以使用下列選項語法:

~I - 刪除任何引號("),擴充 %I
%~fI - 將 %I 擴充到一個完全合格的路徑名
%~dI - 僅將 %I 擴充到一個驅動器號
%~pI - 僅將 %I 擴充到一個路徑
%~nI - 僅將 %I 擴充到一個文件名
%~xI - 僅將 %I 擴充到一個文件擴展名
%~sI - 擴充的路徑只含有短名
%~aI - 將 %I 擴充到文件的文件屬性
%~tI - 將 %I 擴充到文件的日期/時間
%~zI - 將 %I 擴充到文件的大小
%~$PATH:I - 查找列在路徑環境變數的目錄,並將 %I 擴充到找到的第一個完全合格的名稱。如果環境變數名未被定義,或者沒有找到文件,此組合鍵會擴充到空字元串

可以組合修飾符來得到多重結果:

%~dpI - 僅將 %I 擴充到一個驅動器號和路徑
%~nxI - 僅將 %I 擴充到一個文件名和擴展名
%~fsI - 僅將 %I 擴充到一個帶有短名的完整路徑名
%~dp$PATH:i - 查找列在路徑環境變數的目錄,並將 %I 擴充到找到的第一個驅動器號和路徑。
%~ftzaI - 將 %I 擴充到類似輸出線路的 DIR

在以上例子中,%I 和 PATH 可用其他有效數值代替。%~ 語法用一個有效的 FOR 變數名終止。選取類似 %I 的大寫變數名比較易讀,而且避免與不分大小寫的組合鍵混淆。

Ⅶ cmd for命令

可以 不過語法上有些差異
具體可以在運行裡面 輸入CMD 回車
再輸入FOR /? 查看詳細
你上面的例子
在DOS 裡面應該是這樣的
::ECHO OFF 關閉回顯
@ECHO OFF
FOR /L %%a IN (1,1,3) DO (
ECHO 1111
ECHO 2222
)
::PAUSE 按任意鍵繼續...
PAUSE

Ⅷ cmd中for循環怎麼寫

你這界面是powershell吧,不是cmd,這兩個東西語法不一樣的,你可以打個ls看看,如果能看到執行就是powershell的,如果不能那就是cmd,你說的for /l 這種是cmd下的寫法,在powershell中則是跟編程語言差不多,類似於
for($x=1; $x -lt 10; $x=$x+1)

{
echo $x

}

Ⅸ 關於使用cmd命令中for /f 「delimes= tokens=1,2*」安裝軟體

你可以用一個中間變數來接受這個值,比如在For循環體裡面加上
set a=%%i
這樣%%i的值就賦值給了變數a,這樣你在其他地方才能用這個值
:D
echo !a!
注意最好加上延遲變數SETLOCAL ENABLEDELAYEDEXPANSION

閱讀全文

與cmdfor命令相關的資料

熱點內容
linux命令開放所有許可權 瀏覽:573
30歲能學會編程 瀏覽:735
小火箭的伺服器是什麼 瀏覽:967
cad查信息命令 瀏覽:402
XP禁止新建文件夾 瀏覽:394
程序員的悲慘生活 瀏覽:207
什麼找房app比較好用 瀏覽:202
手機視頻剪輯壓縮 瀏覽:320
中華軟體庫源碼資源共享 瀏覽:69
極雲普惠沒有合適的前端伺服器 瀏覽:173
伺服器空白處怎麼辦 瀏覽:677
stm單片機控制機械臂 瀏覽:192
施工方案整理到文件夾叫什麼名 瀏覽:958
霍夫曼編碼演算法 瀏覽:544
生成解決方案等於編譯加鏈接嗎 瀏覽:22
俄羅斯加密貨幣計劃 瀏覽:826
linuxonarm 瀏覽:737
表格文件加密後還是無法打開 瀏覽:582
pdf存jpg 瀏覽:598
蚌埠力源碼頭租房 瀏覽:240