2016-04-04 35 views
2

我正在瀏覽一些批處理文件,出於好奇/爲了學習的目的,我看到了一件我一直無法理解的東西。我確定這很簡單,但我不想簡單地運行這個文件,原因很明顯。的含義。 (期間)在批處理文件中複製時

類似於以下行:

copy /Y "\git\MyProject\bin\Release\MyLib-1.dll" . 
copy /Y "\git\MyProject\bin\Release\MyLib-2.dll" . 
copy /Y "\git\MyProject\bin\Release\MyLib-3.dll" . 

我知道/ Y從網上閱讀做,但什麼是.在做什麼?我的第一個假設是,它意味着將文件複製到當前目錄,但我的印象是%cd%變量的作用,所以我不太確定。

回答

3

期指當前目錄,從中批處理文件被調用。因此,在這種情況下,3個DLL庫文件將被複制到調用此批處理腳本的當前目錄中。

如果/ Y參數已存在於當前目錄中,它將強制它們被覆蓋。

+0

因此,它們被複制到腳本所在的位置,或%cd%被設置爲? (如果我明確地將'cd'設置爲腳本本身的其他位置) –

+2

如果您的腳本存在於C:\ BatchScripts中,並且您從C:\ SomeOtherPath中調用它,則這些文件將被複制到C:\ SomeOtherPath 。當然,除非您在批處理文件中更改目錄,或者在調用腳本之前設置了其初始工作目錄。 %cd%保存當前目錄作爲參考,但是。同樣也是如此。這是當前目錄最直接簡潔的語法。 – ManoDestra

+2

爲了進一步說明,如果您在此複製操作之前從您的批處理文件中找到cnange目錄,它將會將這些文件複製到您已更改到的目錄中。 – ManoDestra

1

這意味着當前目錄,所以在您的copy - 命令它意味着你將文件複製到當前目錄

相關問題