Tisztelt fórumtársak!
Magyar ékezetes betűkkel gyűlt meg a bajom.
Telepítettem egy programot, mely a fájlokat Add-Ons mappanévre teszi alapértelmezetten, mivel INT verzió.
Hogy a főprogram kezelni tudja a kiegészítőt , át kell helyeznem egy Kiegészítők nevű mappába.
Mivel nincs a programnak eltávolítója, létrehoztam egy parancssororos leírást.
Ami szépen teszi is a dolgát, míg el nem ér az ékezetes mappanévhez.
Kód
@Echo off
chcp 1250
cd /d %~dp0
cmd /c rmdir /Q /S "C:\Program Files\Graphisoft\Archicad 28\Kiegészítők\BIMmTool\"
Mit rontottam el, hogy nem találja a mappanevet?
Hálás köszönetem minden segítségért!
Te ugyan beállítottad a chcp 1250 kódlapot, ami jó irány, de ez önmagában nem mindig elég, mert:
- a fájlrendszer elérési útvonalát még így sem biztos, hogy helyesen értelmezi a cmd.
- a fájlnevek és mappanevek kódolása és a cmd belső kezelése nem mindig kompatibilis.
A PowerShell v7.x jobban kezeli az ékezetes karaktereket.
Így írhatod át a parancsodat PowerShell v7.x formátumba:
PowerShell szkript (mentsd {valami}.ps1 fájlba):
Másik megoldás: CMD-hez Unicode támogatás
Ha mégis ragaszkodsz a .bat fájlhoz és CMD-hez, ezt próbáld ki:
1. Állítsd át a kódlapot UTF-8-ra
2. Mentés UTF-8 kódolással
A .bat fájlt mentsd el UTF-8 (BOM nélkül) formátumban, ezt a Notepad++: Kódolás → Kódolás UTF-8-ként (BOM nélkül) tudod elérni
A CMD még UTF-8 kódlappal is hajlamos félreérteni az ékezetes karaktereket, főleg, ha a betűtípus nem támogatja őket. Emiatt a PowerShell jobb és biztosabb megoldás.