我從Project Gutenberg下載了大約34000本.txt格式的圖書。現在我想根據它的內容重新命名它們。例如,每個文本文件都包含其「標題」和「作者姓名」,因此我想通過一些命令重命名其「標題」和「作者姓名」上的所有文本文件。批量重命名.txt文件
我創建了一個批處理文件。它運行但不重命名文件。這是我的代碼:
@echo off&setlocal
cd E:\Test
for /f "delims=" %%i in ('dir /a-d/b *.txt') do (
set "nname="
set "fname=%%~i"
for /f "usebackqskip=7delims=" %%f in ("%%~i") do if not defined nname
set "nname=%%f"
setlocal enabledelayedexpansion
set "nname=!nname:~0,40!"
echo rename "!fname!" "!nname!"
endlocal
)
你的腳本不會重命名文件,因爲它不會嘗試(它不會在任何地方調用'ren',也不會''移動')。你的問題到底是什麼? – stakx
感謝您的回覆。我的問題是,我需要一個腳本,通過其內容重命名文本文件。例如,一個文本文件名是9767.text,這個文件包括「作者:本約翰遜」。現在我想用腳本替換它的作者姓名「Ben Johnson」上的這個文件(9767.text)。我有34000個文本文件,其名稱是這樣的。 –