2010-11-09 32 views

回答

4

創建像「copy_file.cmd」您的批處理文件,並把這些內容:

@echo off 
SET SRC="%~dp0file.dll" 
SET DEST="%WINDIR%\system32\file.dll" 
if not exist %DEST% copy /V %SRC% %DEST% 

如果目標文件不存在,這將源文件複製到目標。 /V開關使複製驗證文件已被正確複製,並且是可選的。

SRC%~dp0的需要從可變%0(批處理文件的路徑)的驅動d和路徑p和使用該路徑作爲一個前綴file.dll。您希望這樣做,以確保腳本始終從批處理文件所在的目錄獲取文件,而不是當前目錄。例如,如果您的批處理文件位於映射到H:的網絡驅動器上,則仍然可以從C:運行它。

c:\> h:\shared_scripts\copy_file.cmd 
+0

我想在現代文件系統中,您可以放心地忽略'/ V'開關。 – Joey 2010-11-10 01:08:37

+1

您可能希望將第二行更改爲'SET SRC =「%〜dp0file.dll」'。 '%〜dp0'展開爲批處理文件所在文件夾的路徑。這樣,如果當前目錄與批處理文件所在的目錄不同,那麼您仍然會採用正確的文件。 – 2010-11-11 07:25:26

+0

@Cheran S:好主意,我做了改變。 – indiv 2010-11-11 18:11:24

相關問題