CMD of applicatie: kopieren van bestandsnamen

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • BPTBPTBPT
  • Registratie: Juli 2018
  • Laatst online: 03-07 17:42
Ik ben op zoek naar een manier om in een command prompt de opdracht te geven:

Kopieer bestandsnaam van bestand X naar bestand Y.
Zonder de extensie, en mèt een manier om fouten te voorkomen wanneer de bestandsnaam al voorkomt. (bijvoorbeeld de toevoeging "(+1)").

Geen idee of dat binnen CMD zelf kan of dat ik een externe applicatie hiervoor nodig heb.
Wie kan helpen?

...

Wat ik zelf al gedaan heb: een poos gezocht naar manieren om bestandsnamen te kopieren met CMD. Mijn voorlopige conclusie is dat dit niet kan omdat ik er niets over kan vinden... Maar dan ook helemaal niets.

Alle reacties


Acties:
  • 0 Henk 'm!

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Kan en klare scripts ga je niet vinden. Je zult zelf moeten gaan scripted, dan is stap 1 de basics van de taal leeen.

Als je nog geen uitgebreide ervaring hebt met batch, dan zou ik adviseren vooral toe richten op powershell. Daar ervaring mee opdoen is meer toekomstvast. En dan is het “simpelweg” een if then else. Let wel op dat een bestandsnaam meer en 1 punt kan bevatten. Een voorbeeld van hoe je de extensie kan checken: https://stackoverflow.com...7364/check-file-extension

[ Voor 13% gewijzigd door F_J_K op 25-11-2022 16:25 ]

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


Acties:
  • 0 Henk 'm!

  • Ryanirin
  • Registratie: Maart 2012
  • Niet online
Dat moet wel kunnen hoor, maar met F_J_K eens dat ik me ook op powershell zou richten als dat een optie is.

In batch kun je bijvoorbeeld de bestandsnaam van een bestand verkrijgen door iets als
code:
1
for %f in ("bestandx.txt") do set filename=%~nf

vervolgens kun je bestand y renamen met behoud van zijn huidige extensie met iets als
code:
1
for %f in ("bestandy.txt") do ren %f %filename%%~xf


Dan moet je er alleen nog even een if/else statement omheen bouwen om te kijken of het bestand al bestaat ("if exist ..."), en zo ja in bovenstaande code tussen %filename% en %~xf bijv iets als -duplicate of 1 of wat je wilt te zetten.