2014-05-24 195 views
0

我正在使用下面的批處理腳本將文件從當前文件夾複製到指定位置。批處理腳本文件名

@echo off 
echo copying files to destination 
copy *.eps* \\10.10.14.13\adman\in\displ) 

我在上面的腳本中遇到了2個問題。

  1. 我不能夠選擇一個特定的文件並運行腳本,e.g如果文件夾得到更多(EPS)文件是將所有文件複製到該位置。

  2. 我想在每個複製文件的末尾插入我的用戶登錄名。

我的文件名看起來像F0#CGDBANG000947532#.eps,我想要這樣F0#CGDBANG000947532#username.eps

+1

那麼,#1是真的,因爲你已經告訴它使用'* .eps *'複製所有文件,它匹配所有擴展名以「.eps」開頭的文件。如果您不想複製所有文件,請不要使用「*」。作爲基本文件名 - 它匹配所有內容。 –

+0

@Ken White 是的,我提到要複製所有(* .eps)文件。我會在我的文件夾中有很多格式文件,我只想要(eps)擴展名文件被複制,而且我也選擇了這個文件。 Like 1. 4450.eps 2. 4450.pdf 3. AA4450.eps 在這個例子中,我只想要第一個文件(4450.eps)需要被複制,並且通常選擇特定並執行腳本通過sendto。但是,像這樣做所有其他eps文件也複製。請幫忙 – Logesh

回答

0
copy "*.eps*" "\\10.10.14.13\adman\in\displ\*%username%.*" 

嘗試ForFiles /?For /?xcopy /?,並robocopy /?的如何選擇不同的性判據的文件。

+0

非常感謝用戶名。但它會在文件擴展名後面添加用戶名<我想要將文件名末尾的用戶名添加到擴展名中。 而Forfiles不起作用,我只想選擇一個特定的文件並右鍵單擊該腳本並執行。謝謝 – Logesh

+0

我需要在擴展名之前的文件名末尾添加用戶名 – Logesh

0

終於,在你的一些評論和你的其他問題後,我理解你的請求(我認爲)。

@echo off 
for %%i in (%*) do if /i "%%~xi"==".eps" copy "%%i" "\\10.10.14.13\adman\in\displ\%%~ni%username%.%%~xi" 
pause