Få filnavn uden sti og brug det i kommandoer i Windows kommandoprompt

Hvordan kan man få kun filnavnet uden stien ved brug af for /r %f in (*) do echo %f, og er det muligt at bruge filnavnet i en kommando som echo "blah blah blah 'filename'" >> blahblah_filename.txt?

For at få kun filnavnet uden stien ved brug af en for-loop i en Windows kommandoprompt, kan du bruge modifikatoren ~nx. For at bruge filnavnet i en kommando som echo "blah blah blah 'filename'" >> blahblah_filename.txt, kan du bruge modifikatoren ~n.

Hvordan kan man få kun filnavnet uden stien ved brug af for /r %f in (*) do echo %f, og er det muligt at bruge filnavnet i en kommando som echo "blah blah blah 'filename'" >> blahblah_filename.txt?

For at få kun filnavnet uden stien ved brug af en for-loop i en Windows kommandoprompt, kan du bruge følgende metode:

  1. Brug ~nx modifikatoren for at få filnavnet og udvidelsen uden stien.

Eksempel:

for /r %f in (*) do echo %~nxf

Dette vil ekko filnavnet og udvidelsen uden stien for hver fil i den aktuelle mappe og undermapper.

For at bruge filnavnet i en kommando som echo "blah blah blah 'filename'" >> blahblah_filename.txt, kan du gøre følgende:

  1. Brug ~n modifikatoren for at få kun filnavnet uden udvidelsen.
  2. Indsæt filnavnet i din kommando ved hjælp af variablen.

Eksempel:

for /r %f in (*) do echo "blah blah blah '%~nxf'" >> blahblah_%~nf.txt

Dette vil ekko teksten "blah blah blah 'filename.ext'" og gemme den i en fil navngivet blahblah_filename.txt for hver fil i den aktuelle mappe og undermapper.

Bemærk:

  • Hvis du kører kommandoen i en batch-fil, skal du bruge dobbelt procenttegn (%%) i stedet for enkelt procenttegn (%).

Eksempel i en batch-fil:

for /r %%f in (*) do echo "blah blah blah '%%~nxf'" >> blahblah_%%~nf.txt