.bat - foldery ze spacja w nazwie

.bat - foldery ze spacja w nazwie
SK
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 80
0

Czesc,

W pliku Nazwy.txt, w wierszach mam nazwy folderow, jakie bede chcial utworzyc.
Jesli w pliku .txt pojawia sie spacja (np "jakas nazwa"), to tworzy sie folder o nazwie "jakas", zamiast "jakas nazwa"

Kopiuj
for /f %%i in ("Nazwy.txt") do mkdir "Testy\%%i"

Wiecie moze dlaczego tak sie dzieje?

konserwa
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 282
0

a dałeś " " albo ' '?

SK
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 80
0
konserwa napisał(a):

a dałeś " " albo ' '?

Nie mialem, ale dodalem i to rowniez nie pomoglo....

abrakadaber
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 6610
0

pokaż zawartość tego pliku z folderami

wisensane
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 51
1

W ten sposób działają funkcje, z których korzystasz.
Jeśli chcesz osiągnąć zamierzony cel, możesz to zrobić stosując np. taki zapis:

Kopiuj
for /f "tokens=* delims= " %%i in (Nazwy.txt) do mkdir "Testy\%%i"
SK
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 80
0

Dodanie tokens i delims pomoglo - dzieki

Mam jeszcze problem z ustawieniem nazwy pliku jako parametru, tzn. zrobieniem cos w stylu:

Kopiuj
set plik_ext="Nazwa pliku.txt"
for /f "tokens=* delims= " %%i in (%plik_ext%) do mkdir "Testy\%%i"

W tym przypadku tworzy sie folder o nazwie 'Nazwa pliku.txt' zamiast takich, jakie sa w wymienione w wierszach pliku plik_ext.
Pewnie jest jakis sposob na zrobienie tego ...

wisensane
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 51
0

Czy użycie spacji w nazwie pliku jest niezbędne?
Najprościej byłoby ją usunąć, dzięki czemu mógłbyś pominąć cudzysłów w pierwszej linii kodu ;)

R3
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 419
0

dwie możliwości

Kopiuj
for /f "usebackq tokens=* delims= " %%i in (%plik_ext%) do echo "Testy\%%i"
for /f "tokens=* delims= " %%i in ('type %plik_ext%') do echo "Testy\%%i"

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.