Bagaimana saya bisa mengganti nama banyak folder dan sub-file dengan skrip batch?

1

Saya membuat alat pembersihan yang akan menghapus dan mengganti nama beberapa direktori dan file yang ditentukan. saya bisa secara individual ganti nama dan hapus direktori dan file, tetapi saya tidak bisa mengganti nama lebih dari satu folder, dan saya tidak bisa mengganti nama file dalam sub-direktori. Ini skrip saya:

if not exist Plugin mkdir Plugin
RENAME "xml" "XML"

RENAME "x64\bin.exe" "x64\bin_x64.exe"
RENAME "x64" "64bit"

RENAME "x86\bin.exe" "x86\bin_x86.exe"
RENAME "x86" "32bit"

rmdir Licenses /s /q
del bin_old.exe
del bin.exe.bak
del README.md
del license.txt
del components.xml
del InstallationLog.txt
del maintenancetool.dat
del maintenancetool.exe
del maintenancetool.ini
del maintenancetool.zip
del network.xml

Seperti yang Anda lihat, saya ingin mengganti nama 32bit yang dapat dieksekusi di dalam direktori x86 menjadi bin_x86.exe, lalu untuk mengganti namanya dari folder tersebut x86 untuk 32bit, dan kemudian setara dengan biner dan direktori 64bit. Saat ini skrip saya berhasil mengubah nama folder yang pertama kali ditentukan (tapi bukan biner) , dan bukan folder atau biner kedua.

Mr. Mendelli
sumber
1
Anda memiliki beberapa kesalahan ketik di sana - "RANAME"
paradroid
Ups, terima kasih telah melihatnya. Skrip saya sebenarnya tidak mengandung kesalahan ketik, sehingga tidak memengaruhi hasil ...
Mr. Mendelli

Jawaban:

1

Perintah RENAME tidak dapat bekerja di dalam subdirektori, jadi solusi mudahnya adalah cd ke dalam direktori dalam skrip batch sebelum mengubah nama file.

cd x64
RENAME "bin.exe" "bin_x64.exe"
cd ..
RENAME "x64" "64bit"
cd x86
RENAME "bin.exe" "bin_x86.exe"
cd ..
RENAME "x86" "32bit"
paradroid
sumber
Info lebih lanjut di sini: ss64.com/nt/ren.html
paradroid