1

Это может быть дубликатом этого, но мне нужно немного изменить:создание папки из первых 5 символов имени файла в пакетном файле

Мне не нужно выбирать первые пять букв файла. Я хочу, чтобы имя папки точно совпадало с именем файла. И я хочу, чтобы это происходило в папке, где расположен пакетный скрипт. Таким образом, он должен обнаружить текущую папку.

Есть ли простой способ изменить оригинальный скрипт?

РЕДАКТИРОВАТЬ: На самом деле не так много модификаций не требуется. Однако, когда он создает папки, он включает расширение файла. Есть ли способ удалить расширение файла?

1 ответ1

1

Использование ~n включает только имя файла без расширения.

Вам даже не нужен целый пакетный файл, достаточно только следующей строки:

for %i in (*) do md "%~ni"

Однако его необходимо запускать из целевого каталога, поэтому текущий каталог не имеет значения, поскольку по умолчанию md "%~ni" создает каталог в текущем рабочем каталоге.

Если вы хотите запустить его из любого каталога и передать ему цель (например, создать ярлык, на который вы можете перетаскивать папки), вы можете использовать это (например, Files2Folders.bat):

@for %%i in (%1\*) do md "%1\%%~ni"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .