Windows/CMD:修訂版本之間的差異
(→迴圈) |
(→常用命令) |
||
(未顯示同用戶所作出之1次版本) | |||
第 25 行: | 第 25 行: | ||
10 | 10 | ||
請按任意鍵繼續 . . .</pre> | 請按任意鍵繼續 . . .</pre> | ||
+ | 語法如下: | ||
+ | <pre>for /l {%%|%}<Variable> in (<Start#>,<Step#>,<End#>) do <Command> [<CommandLineOptions>]</pre> | ||
+ | #/l參數代表執行迴圈時,會比較Start#與End#值的大小。 | ||
+ | #Start#的值小於End#值會繼續執行迴圈。 | ||
+ | #Step#代表每一次迴圈後對Start#增加的值。 | ||
+ | #%%為迴圈變數,用來暫存每一次Start#遞增後的值。%%後要接英文字母。<br/>在cmd中用一個%即可;而在batch檔中要寫兩個%%,前面的%為轉義字符。 | ||
===常用命令=== | ===常用命令=== | ||
第 32 行: | 第 38 行: | ||
#[https://dotblogs.com.tw/sakurasea/2008/04/25/3490 好用的dir指令] | #[https://dotblogs.com.tw/sakurasea/2008/04/25/3490 好用的dir指令] | ||
#[https://mrtang.tw/blog/post/9848241 MS-DOS常用指令教學(一)-CD,MD,RD,DIR] | #[https://mrtang.tw/blog/post/9848241 MS-DOS常用指令教學(一)-CD,MD,RD,DIR] | ||
− | <p>(empty):查詢目前所在目錄之資料夾與檔案<br/><span style='color: #008000;'>/A : 依指定屬性,又分 H(隱藏), S(系統), D(目錄), R(唯讀), A(保存)<br/></span><span style='color: #008000;'>/B : 單純格式<br/></span>/C : 大小以千分位顯示<br/>/D : 寬列表,依欄排序<br/>/L : 小寫顯示<br/><span style='color: #008000;'>/O : 指定順序排序,N (名稱), S(大小), E(副檔名), D(日期), G(子目錄先), -(反向)<br/></span><span style='color: #008000;'>/S : 指定目錄及目錄中所有檔案 (一層一層進去看)<br/></span>/T : 指定顯示或排序之欄位,C(建立), A(讀取), W(寫入)<br/><span style='color: #008000;'>/W: 寬格式顯示</span></p> | + | <p>(empty):查詢目前所在目錄之資料夾與檔案<br/><span style='color: #008000;'>/A : 依指定屬性,又分 H(隱藏), S(系統), D(目錄), R(唯讀), A(保存),如 /a:d 目錄才列出來<br/></span><span style='color: #008000;'>/B : 單純格式<br/></span>/C : 大小以千分位顯示<br/>/D : 寬列表,依欄排序<br/>/L : 小寫顯示<br/><span style='color: #008000;'>/O : 指定順序排序,N (名稱), S(大小), E(副檔名), D(日期), G(子目錄先), -(反向)<br/></span><span style='color: #008000;'>/S : 指定目錄及目錄中所有檔案 (一層一層進去看)<br/></span>/T : 指定顯示或排序之欄位,C(建立), A(讀取), W(寫入)<br/><span style='color: #008000;'>/W: 寬格式顯示</span></p> |
<p><span style='color: #0000ff;'>ex: 查詢 D:\ 底下之所有目錄及檔案,以目錄排序,橫向式,一頁停一次<br/>dir d:\ /p /w /o:D</span></p> | <p><span style='color: #0000ff;'>ex: 查詢 D:\ 底下之所有目錄及檔案,以目錄排序,橫向式,一頁停一次<br/>dir d:\ /p /w /o:D</span></p> | ||
<p><span style='color: #ff0000;'><strong><span style='font-size: 12pt;'>2. 變更/顯示 屬性 (attrib)</span></strong></span></p> | <p><span style='color: #ff0000;'><strong><span style='font-size: 12pt;'>2. 變更/顯示 屬性 (attrib)</span></strong></span></p> |
2023年6月13日 (二) 00:04的最新修訂版本
強制刪除
DEL /F /A /Q \\?\%1 RD /S /Q \\?\%1
- 造Batch File(文字檔),命名為 xx.bat ,
- 將你無法刪除的檔案或目錄拉到該 BAT 檔,咻一下就刪除了
迴圈
@echo off for /l %%x in (1, 1, 10) do ( echo%%x ) pause
執行結果:
1 2 3 4 5 6 7 8 9 10 請按任意鍵繼續 . . .
語法如下:
for /l {%%|%}<Variable> in (<Start#>,<Step#>,<End#>) do <Command> [<CommandLineOptions>]
- /l參數代表執行迴圈時,會比較Start#與End#值的大小。
- Start#的值小於End#值會繼續執行迴圈。
- Step#代表每一次迴圈後對Start#增加的值。
- %%為迴圈變數,用來暫存每一次Start#遞增後的值。%%後要接英文字母。
在cmd中用一個%即可;而在batch檔中要寫兩個%%,前面的%為轉義字符。
常用命令
1. 查詢目錄 (dir)
可參考:
(empty):查詢目前所在目錄之資料夾與檔案
/A : 依指定屬性,又分 H(隱藏), S(系統), D(目錄), R(唯讀), A(保存),如 /a:d 目錄才列出來
/B : 單純格式
/C : 大小以千分位顯示
/D : 寬列表,依欄排序
/L : 小寫顯示
/O : 指定順序排序,N (名稱), S(大小), E(副檔名), D(日期), G(子目錄先), -(反向)
/S : 指定目錄及目錄中所有檔案 (一層一層進去看)
/T : 指定顯示或排序之欄位,C(建立), A(讀取), W(寫入)
/W: 寬格式顯示
ex: 查詢 D:\ 底下之所有目錄及檔案,以目錄排序,橫向式,一頁停一次
dir d:\ /p /w /o:D
2. 變更/顯示 屬性 (attrib)
(empty) : 顯示屬性
+ : 設定屬性
- : 清除屬性
A : 保存
S : 系統
R : 唯讀
H : 隱藏
/S : 處理目前資料夾及子資料夾相符之檔案
/D : 一併處理資料夾
ex: 去除 D:\Test 底下檔案所有屬性
attrib -a -s -r -h D:\Test\ /s /d
3. 變更目錄 (cd, chdir)
(empty) : error
/D : 同時更改目錄及所在磁碟
.. : 回到上一層目錄
[path] : 切到 [path] 目錄下
ex: 直接切換到 D:\test\1234 資料夾底下
cd /d D:\test\1234
4. 建立目錄 (md, mkdir)
可建立深層之目錄
ex: 於目前目錄建立 a\b\c\d 資料夾
md \a\b\c\d
5. 刪除目錄 (rd, rmdir)
/S : 除目錄本身,一併移除指定目錄裡的所有目錄和檔案。
/Q : 安靜模式
ex: 刪除 D:\Test 底下所有目錄與檔案,不予以提示
rd D:\Test /s /q
6. 檔案重新命名 (ren, rename)
rename 更名前 更名後
注意, rename 不可更改其目錄
7. 刪除多個 / 一個檔案 (del, erase)
/P : 刪除前提示。
/F : 強制刪除唯讀
/S : 由所有子目錄刪除指定檔案
/Q : 安靜模式
/A : 依指定屬性,又分 H(隱藏), S(系統), D(目錄), R(唯讀), A(保存), -(反向)
8. 移動/更改 檔案/資料夾 名稱 (move)
/Y : 不提示是否覆蓋
/-Y : 提示是否覆蓋
ex: 移動 C:\a.txt ,至 D:\ 底下,並重新命名為 b.txt,不提示是否覆蓋
move C:\a.txt D:\b.txt /y
9. 複製檔案 (copy)
/A : 指定 ascii 文字檔
/B : 指定一二位元檔
/V : 確認是否正確寫入
/Y : 不顯示提示覆寫
/-Y : 顯示覆寫
/Z : 可於重新啟動模式中複製網路資料
ex1: 複製 C:\ 底下之 x.bak y.txt 至 D:\Folder 底下,直接覆寫
copy C:\x.bak + C:\y.txt D:\Folder
10. 複製檔案與樹狀目錄 (xcopy)
/A : 只複制保存屬性,不改變屬性設定
/M : 只複制保存屬性,清除屬性設定
/D:m-d-y : 複製在指定日期當天或之後發生變更的檔案。
如果沒有給日期,只複製那些來源檔案日期比目的檔案日期為新的檔案。
/Exclude: file1 + ... : 簡單的說就是排除複製,先接一個文字檔 file1,再去 file1 裡面看哪些是不要複製的東西。
/P : 建立目錄提示
/S : 複製每個目錄與包含資料夾,不含空目錄
/E : 複製每個目錄與包含資夾夾,含空目錄
/V : 驗證新檔
/W : 複製前提醒
/C : 錯誤繼續複製
/I : 目的不存在且複制一個以上之檔案,假定目的為目錄
/Q : 複製時不顯示檔名
/F : 複製時顯示來源、目的全部檔名
/R : 覆蓋唯讀
/T : 建立目錄結構,不複製資料,不含子目錄與資料。/T /E 便含空目錄與子目錄
/U : 只覆製已存在位置之檔案
/H : 隱藏檔與系統檔也複製
/K : 屬性也複制
/Y : 不提示覆蓋
/-Y : 提示覆蓋
/Z : 網路模式