Как я могу рекурсивно перечислить имена файлов (только) в DOS / Windows? [Дубликат]


20

Возможное дублирование:
получить рекурсивные имена файлов в командной строке

Я хотел бы рекурсивно перечислить все файлы в каталоге, показывая только имена файлов (без расширений и без полных путей). Я использую Windows / DOS.

Самое близкое, что я мог получить, dirбыло dir /s /b, но он перечисляет полные пути, а также показывает расширения.

Ну, возможно, я мог бы жить с расширениями, но я должен избавиться от путей!

Есть идеи?


1
Какая версия windows?
OldWolf

@OldWolf: XP. Я предпочитаю не использовать стороннее программное обеспечение /
Дэвид Б

Ответы:


28
cd /d C:\Path\To\Source\Folder
for /r %i in (*) do @echo %~ni

Если вам нужен список, сохраненный в файл, добавьте >> C:\Path\To\list_file.txtв конец forкоманды.

Если вам нужны расширения, измените %~niна%~nxi

Для того, чтобы использовать в пакетном файле, изменить все %к%%


6
Если вам нужны путь, имя и расширение, измените% ~ ni на% ~ pnxi
Deep

это работает, но не показывает скрытые файлы. Как я могу также увидеть скрытые файлы?
аля

@ala: Если вы хотите показать скрытые файлы, вам нужно будет использовать что-то вроде ответа Дэвида Реми только с соответствующими флажками, переданными dirкоманде.
Размягчитель

7

Если вы хотите загрузить powershell, эта команда должна это сделать.

get-childitem "d:\acc" -recurse|foreach {$_.Basename}

5

Делая что-то вроде следующего, вы получите то, что хотите:

@for /f "delims=" %a in ('Dir /s /b %systemdrive%') do echo %~na

Просто передайте вывод в файл и используйте его оттуда, если это необходимо.


3

Не знаю, считаете ли вы это сторонним программным обеспечением или нет, так как оно от Microsoft и поставляется с 7, но PowerShell решит большинство ваших проблем довольно легко. Если вы еще не установили его, он доступен для XP на сайте Microsoft.

Get-ChildItem -path "C:\Program Files\" -recurse | foreach ($_) {
    write $_.name
}
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.