我研究了類似題目的問題,但它們看起來並不是我所需要的。此外,在我第一天,我找到了一篇文章(我很抱歉,現在找不到它,即使我將它加入書籤,書籤也只是帶我到這個論壇的主頁),這非常類似到我正在尋找,但不成功(不是批處理文件足夠精明),以修改它爲我的目的。根據匹配的文件名將多個pdf文件移動到多個文件夾
我所擁有的是一個包含幾千個pdf文件的目錄。
他們被命名爲這樣的東西。
12345.pdf,
12345.pdf,
12347.pdf,
(等)。
在源目錄幾千相應的文件夾,其命名是這樣的:
12345_eventnumber_eventprovider,
12346_eventnumber_eventprovider,
12347_eventnumber_REF ALT#_eventprovider,
(依此類推)。
我想要做的就是讓所有的pdf神奇地根據它們的文件名去它們相關的文件夾。 pdf的整個文件名,第一組數字直到文件夾的第一個下劃線。
無論如何,在修改了其他海報的文件後,這裏就是我最終得到的結果(使用我有限的批處理文件技能)。
@Echo off
cd /d "c:\My source Directory"
setlocal enabledelayedexpansion
for %%a in (*_*.*) do (
for /f "delims=_" %%b in ("%%a") do (
set "f=%%b"
if /i "%%~xa"==".pdf" (
md "c:\My source directory" 2>nul
move "%%a" "C:\My destination directory!f:~0,-1!" >nul
)
它理解我的源代碼目錄,至少根據結果。但它是一個失敗,因爲它所做的只是在我的源代碼目錄中創建新文件夾(而不是全部)。所以我希望有人能夠幫助我解決它並讓它做我想做的事情?
如果這取決於我,我們不會通過將它們分別放在自己的小文件夾中來跟蹤文件序列,而是將它們列入數據庫或其他類似文件中(是的,老闆希望每個文件都有自己的文件小文件夾,這樣他就可以在MS窗口中查看是否有任何數字丟失,主有憐憫)。
但這不取決於我。此外,雖然似乎有一些非常方便的小共享軟件或甚至便宜的軟件,但我們的網絡幾乎不允許外部應用程序。至少不是沒有國會行動(幾乎是字面上的)。
但是我非常希望看到批處理文件似乎正在朝着我想要的方向前進,所以如果有人能夠幫助我理順並幫助我獲得正確的語言,請提前致謝。
在此先感謝!
謝謝@MC ND 但是我仍然在做錯的事情,但是(根據我的第一篇文章,我是相當新的)。我在哪裏插入文件和文件夾路徑?在兩個括號內?另外,我是否完全用上面的語言替換了以前的語言?或者我將它插入某處? (我嘗試了幾種不同的方式,似乎沒有任何工作)。謝謝! – LWilson 2014-11-04 18:45:42
@LWilson,查看更新後的答案。在這兩種情況下,這都是你在問題中指出的。我錯過了什麼? – 2014-11-04 19:05:18
不,我確定它的工作原理,如果我明白如何正確地修改它(把我的文件夾名稱等)。我認爲更多的是我不瞭解這個過程,並且我做錯了什麼。 難道路途太長?上述兩組指令似乎只設置了pdf文件所在文件夾的路徑,沒有一個文件移動到與其關聯的文件夾。 – LWilson 2014-11-04 19:40:21