Windows/CMD:修訂版本之間的差異

出自福留子孫
跳轉到: 導覽搜尋
常用命令
 
(未顯示同用戶所作出之4次版本)
第 5 行: 第 5 行:
 
#造Batch File(文字檔),命名為 xx.bat ,
 
#造Batch File(文字檔),命名為 xx.bat ,
 
#將你無法刪除的檔案或目錄拉到該 BAT 檔,咻一下就刪除了
 
#將你無法刪除的檔案或目錄拉到該 BAT 檔,咻一下就刪除了
 +
===迴圈===
 +
<pre>@echo off
 +
 +
for /l %%x in (1, 1, 10) do (
 +
  echo%%x
 +
)
 +
 +
pause</pre>
 +
執行結果:
 +
<pre>1
 +
2
 +
3
 +
4
 +
5
 +
6
 +
7
 +
8
 +
9
 +
10
 +
請按任意鍵繼續 . . .</pre>
 +
語法如下:
 +
<pre>for /l {%%|%}<Variable> in (<Start#>,<Step#>,<End#>) do <Command> [<CommandLineOptions>]</pre>
 +
#/l參數代表執行迴圈時,會比較Start#與End#值的大小。
 +
#Start#的值小於End#值會繼續執行迴圈。
 +
#Step#代表每一次迴圈後對Start#增加的值。
 +
#%%為迴圈變數,用來暫存每一次Start#遞增後的值。%%後要接英文字母。<br/>在cmd中用一個%即可;而在batch檔中要寫兩個%%,前面的%為轉義字符。
 +
 
===常用命令===
 
===常用命令===
 
<p><strong><span style='color: #ff0000;'><span style='font-size: 12pt;'>1. 查詢目錄 (dir)</span></span></strong></p>
 
<p><strong><span style='color: #ff0000;'><span style='font-size: 12pt;'>1. 查詢目錄 (dir)</span></span></strong></p>
<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>
+
可參考:
 +
#[https://zh.wikipedia.org/wiki/Dir_(命令) 中文維基百科介紹]
 +
#[https://dotblogs.com.tw/sakurasea/2008/04/25/3490 好用的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(保存),如 /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.&nbsp;變更/顯示 屬性&nbsp;(attrib)</span></strong></span></p>
 
<p><span style='color: #ff0000;'><strong><span style='font-size: 12pt;'>2.&nbsp;變更/顯示 屬性&nbsp;(attrib)</span></strong></span></p>

2023年6月13日 (二) 00:04的最新修訂版本

強制刪除

DEL /F /A /Q \\?\%1
RD /S /Q \\?\%1
  1. 造Batch File(文字檔),命名為 xx.bat ,
  2. 將你無法刪除的檔案或目錄拉到該 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>]
  1. /l參數代表執行迴圈時,會比較Start#與End#值的大小。
  2. Start#的值小於End#值會繼續執行迴圈。
  3. Step#代表每一次迴圈後對Start#增加的值。
  4. %%為迴圈變數,用來暫存每一次Start#遞增後的值。%%後要接英文字母。
    在cmd中用一個%即可;而在batch檔中要寫兩個%%,前面的%為轉義字符。

常用命令

1. 查詢目錄 (dir)

可參考:

  1. 中文維基百科介紹
  2. 好用的dir指令
  3. MS-DOS常用指令教學(一)-CD,MD,RD,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 : 網路模式