一日一教學 (14)檔案替換 replace

2021-08-10 11:40:22 字數 3117 閱讀 7354

幫助資訊:

替換檔案。

replace [drive1:][path1]filename [drive2:][path2] [/a] [/p] [/r] [/w]

replace [drive1:][path1]filename [drive2:][path2] [/p] [/r] [/s] [/w] [/u]

[drive1:][path1]filename 指定原始檔。

[drive2:][path2]         指定要替換檔案的目錄。

/a                       把新檔案加入目標目錄。不能和/s 或 /u 命令列開關搭配使

用。/p                       替換檔案或加入原始檔之前會先提示您進行確認。

/r                       替換唯讀檔案以及未受保護的檔案。

/s                       替換目標目錄中所有子目錄的檔案。不能與 /a 命令開關搭

配使用。

/w                       等您插入磁碟以後再執行。

/u                       只會替換或更新比原始檔日期早的檔案。不能與 /a 命令列

開關搭配使用。

複製**

命令概括:

replace,全英文replace,意為:替換;下轄6個引數。

replace [drive1:][path1]filename [drive2:][path2]

複製**

replace的使用條件:

::參照語法,使用光桿replace條件有兩個

1.替換和被替換的檔案要同名(根據:目標只有檔案路徑,沒有檔名)

2.兩檔案必須在不同的路徑(根據:同名檔案不能在同乙個資料夾) 

經測試確實如此。 

引數詳解:

/a                       把新檔案加入目標目錄。不能和/s 或 /u 命令列開關搭配使用。

複製**

/a,英文全稱add,意為:新增。

/a引數不能和/s、/u在一起使用。

/a引數與其說是「把新檔案加入目標目錄」,不如說是「複製新檔案到目標目錄」,所以raplace /a 可以當 copy /y 用,不過語法上要注意一下差別。

例子:將1.txt複製到c盤根目錄:

c:\users\hellow~1\desktop>replace /a 1.txt c:\

複製**

/p                       替換檔案或加入原始檔之前會先提示您進行確認。

複製**

/p,英文全稱prompt,意為:提示。

顧名思義,就是提示,效果:

c:\users\hellow~1\desktop>replace /p 1.txt c:\

是否替換 c:\1.txt? (y/n)

複製**

/r                       替換唯讀檔案以及未受保護的檔案。

複製**

/r,英文全稱read,意為:閱讀;在此可引申為唯讀檔案。

竟然有這個引數,可以預見,replace預設是不能替換唯讀檔案的,經測試確實如此。

c:\users\hellow~1\desktop>attrib +r c:\1.txt

c:\users\hellow~1\desktop>replace  1.txt c:\

拒絕訪問 - c:\1.txt

未替換檔案

c:\users\hellow~1\desktop>replace /r 1.txt c:\

正在替換 c:\1.txt

複製**

/s                       替換目標目錄中所有子目錄的檔案。不能與 /a 命令開關搭

配使用。

複製**

/s,英文全稱subdirectory,意為:子目錄。

/s可以替換指定目錄下所有子目錄的檔案,

例如:有兩個txt檔案,他們的完全路徑分別是 c:\1.txt c:\hello\1.txt,用/s引數一次把他們全部替換。

c:\users\hellow~1\desktop>replace /s /r 1.txt c:\

正在替換 c:\1.txt

正在替換 c:\hello\1.txt

複製**

/w                       等您插入磁碟以後再執行。

複製**

/w,英文全稱wait,意為:等待。

這命令就不解釋了,磁碟應該指的是軟盤;由此命令不難看出「吻到死」對cmd.exe只有一種「蕭規曹隨」的「敝帚自珍」之情,沒有「與時俱進」的「i love you,i need you,i want you」的強烈愛情,是的,windows不愛cmd,他只是珍惜她而已……

/u                       只會替換或更新比原始檔日期早的檔案。不能與 /a 命令列

開關搭配使用。

複製**

/u,英文全稱update,意為:更新。

這個引數很神奇,replace中數這個引數最得我心。

例如:先建立兩個文字,c盤的先建立,d盤的後建立

c:\users\hellow~1\desktop>echo i'm first!>c:\1.txt

c:\users\hellow~1\desktop>echo i'm second!>d:\1.txt

複製**

然後加/u引數替換c:\1.txt到d盤
c:\users\hellow~1\desktop>d:\1.txt

c:\users\hellow~1\desktop>replace /u c:\1.txt d:\

c:\users\hellow~1\desktop>type d:\1.txt

i'm second!

複製**

可以看出d盤的1.txt並沒有被替換,這是為什麼?因為d:\1.txt後於c:\1.txt的建立,換句話說:d:\1.txt比c:\1.txt新。

竟然如此,那麼反過來自然就成立了:

c:\users\hellow~1\desktop>replace /u d:\1.txt c:\

正在替換 c:\1.txt

c:\users\hellow~1\desktop>type c:\1.txt

i'm second!

一日一教學 (27)退出CMD視窗 exit

幫助資訊 退出 cmd.exe 程式 命令直譯器 或當前批處理指令碼。exit b exitcode b 指定要退出當前批處理指令碼而不是 cmd.exe。如果從乙個 批處理指令碼外執行,則會退出 cmd.exe exitcode 指定乙個數字號碼。如果指定了 b,將 errorlevel 設成那個...

一日一教學 (19)格式化磁碟 format

幫助資訊 win7下的幫助 格式化磁碟以供 windows 使用。format volume fs file system v label q a size c x p passes s state format volume v label q f size p passes format vol...

一日一Shader 幾何階段之增厚 SS 14

之前做了乙個爆散的效果,那是利用已有頂點的偏移來實現。今天做的增厚效果則是將已有的頂點複製出來乙個,然後沿法線方向偏移,形成雙層結構,讓最終繪製出來的影象有一定的厚度。shader myshader ss 14 mask mask 2d subshader struct v2f float3 twi...