2016-08-30 44 views
0

我一直在使用我的閃存驅動器上的Xcopy進行試驗,這正如讀者最可能知道的那樣,是一種非常有效地傳輸多個文件副本的方法。在我的實驗過程中,我有一個想法。我運行的代碼(將在評論結尾處公開)被設置爲從我的桌面,音樂,照片等文件中複製文件。但是,在我的桌面上,我經常使用一個特別大的文件。當程序訪問遊戲文件時,遊戲運行3D環境需要很長時間才能複製文件,我需要此代碼快速高效地運行。所以,我的想法是:有沒有辦法複製文件的名稱(在這種情況下,遊戲的名稱,FTB),讓程序只複製文件的名稱,然後在閃存上創建一個文本文件驅動代碼正在運行的位置,然後用複製的名稱覆蓋該文檔的名稱?如何使用Windows CMD將文件名的副本保存爲空白文本文檔?

下面是代碼正在運行,並且我知道它有一些明顯的問題,但其對正在工作:如果您需要任何額外的信息,只是問

@echo off 
:: variables/min 
SET odrive=%odrive:~0,2% 
set backupcmd=xcopy /s /c /d /e /h /i /r /y /EXCLUDE:MyExcludes.txt 

%backupcmd% "%USERPROFILE%\Pictures" "%drive%\all\My pics" 
%backupcmd% "%USERPROFILE%\Favorites" "%drive%\all\Favorites" 
%backupcmd% "%USERPROFILE%\Videos" "%drive%\all\Vids" 
%backupcmd% "%USERPROFILE%\Documents" "%drive%\all\Docs" 
%backupcmd% "%USERPROFILE%\OneDrive" "%drive%\all\Onedrive" 
%backupcmd% "%USERPROFILE%\Desktop" "%drive%\all\Desktop" 
%backupcmd% "%USERPROFILE%\Network" "%drive%\all\Other devices" 
copy "Bookmarks.bak" "all" 
removedrive D: -L -H -A -W:1000 

回答

0
  1. 大文件添加到myexcludes.txt文件,因此它不會複製

  2. 只是使用類似下面的備份驅動器上創建一個新文件(假設你的文件被稱爲mylargefilesname.ext)

    echo mylargefilesname.ext > "%drive%\location\mylargefilesname.ext" 
    

------編輯------

要對所有.exe文件執行此操作,可以排除* .exe,然後使用循環。

for /f %%f in ('dir /b "%USERPROFILE%\Pictures\*.exe"') do echo %%f > "%drive%\all\My pics\%%~nxf" 

這是遍歷的dir /b "%USERPROFILE%\Pictures\*.exe"

的輸出,將回顯到使用文件(的文件名+擴展新的文件夾中的文件全路徑的每一行的結果那是什麼的nx部分)

+0

在這種情況下,我可以在代碼中拼接,只對.exe \文件執行此操作,考慮到它的簡單性? @FloatingKiwi –

+0

By * this *我的意思是當代碼運行時,它複製這些文件,但是當它遇到一個.exe文件時,它會經歷上述過程。 –

+0

@MayhemJensen,我已經應用了一個編輯行爲,我認爲你是在 – FloatingKiwi

相關問題