Командная строка 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 и перенаправлены (>
) в текстовый файл.