Командная строка Windows Dir Команда для сохранения текстового файла и без расширений в данных?

У меня есть команда Dir, которую я использую для создания текстового списка каталогов файлов.. "dir /a /b /-p /o:gen > z-file_list.txt"

Кто-нибудь знает, как я могу это изменить, чтобы в текстовом списке не было никаких расширений? Так просто имя файла?

Заранее спасибо!

  • РЕДАКТИРОВАТЬ -

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

Текстовый файл будет выглядеть так
имяфайла.рсш
имяфайла.рсш
имяфайла.рсш
имяфайла.рсш

Я пытаюсь понять, как сделать так, чтобы текстовый файл выглядел так.
имя файла
имя файла
имя файла
имя файла

Спасибо.. извини мне было непонятно

2 ответа

Решение

dir У команды нет переключателя или опции для удаления расширений.

Это может быть сделано путем обработки вывода dir /b в for /f цикл, хотя.

(del list.txt 2>nul) & for /f %f in ('dir /a /b /o:gen') do @echo %~nf >>list.txt

Если вам не нужны подкаталоги или системные / скрытые файлы (вот что dir /a для) то добрая for будет работать тоже.

(del list.txt 2>nul) & for %f in (*) do @echo %~nf >>list.txt

Бежать dir /?, del /? а также for /? для более подробной информации о синтаксисе и переключателях.

Вы можете сделать это из командной строки CMD, немного обманув Powershell. В командной строке введите следующую команду:

powershell -command "dir |select basename" > file_list.txt

Как я уже сказал, это немного обмануть, так как powershell -command вызывает оболочку Powershell для запуска сценария Powershell dir |select basename", FYI, dir в Powershell это просто псевдоним для команды get-childitem и не имеет ничего общего с приглашением CMD dir команда. Powerhsell ожидает, что сценарий и результаты будут возвращены в приглашение CMD и перенаправлены (>) в текстовый файл.

Другие вопросы по тегам