我正在寻找一个使用cmd.exe(Win 10)的命令,该命令将按字母顺序列出文件夹及其子文件夹中的所有文件,而与路径无关,并且将仅显示文件名< / em>(无路径)。
我熟悉的命令(例如,“ dir .. \ samplefolder / b / s / AD / o:n> filelist.txt”)都包含输出中的路径,因此不是我在寻找什么。
谢谢。
答案 0 :(得分:1)
(for /r "c:\startfolder" %%A in (*) do echo %%~nxA)|sort
(这是批处理文件的语法;要直接在命令行上使用,只需将%%
替换为每个%
)
for /r
遍历 r 遍历所有(非隐藏)文件。
%%~nxA
仅显示 n 和e x 扩展名(如果只希望名称不带扩展名,请使用%%~nA
)
有关这些修饰符的更多信息,请参见for /?
。
答案 1 :(得分:0)
如果计算机在当前的PowerShell 5或更高版本上,则可以使用:
None
在.bat文件脚本中。
(Get-ChildItem -Recurse -File -Path '..\samplefolder').Name |
Sort-Object |
Out-File -PSPath 'filelist.txt' -Encoding ascii
如果计算机没有当前的PowerShell,则应对其进行升级或使用:
>"filelist.txt" powershell -NoLogo -NoProfile -Command ^
"(Get-ChildItem -Recurse -File -Path '..\samplefolder').Name | Sort-Object"