前言
接了个任务,要求从测试环境中获取D盘下某个文件夹中的目录和目录中的文件列表,供组内成员挑选哪些要留哪些要删。作为重度强迫症,自然是想让文件列表长成下面这样:
> 目录1
|- 子目录1-1
|- 子目录1-2
...
|- 文件1-1.xxx
|- 文件1-2.xxx
...
======
> 目录2
|- 子目录2-1
|- 子目录2-2
...
|- 文件2-1.xxx
|- 文件2-2.xxx
...
======
...
然而测试环境中似乎除了Windows自带的软件外没有安装任何其他软件,从外面往里拷Python之类的第三方软件也不被允许。该怎么办呢?
怎么做
俗话说,遇事不决上PowerShell。只需要在PowerShell命令行中cd到需要的目录,执行以下命令即可实现需求:
Get-ChildItem -Directory | ForEach-Object {
Write-Output "> $($_.Name)"
Get-ChildItem -Directory -Path $_.FullName | ForEach-Object {
Write-Output " |- $($_.Name)"
}
Get-ChildItem -File -Path $_.FullName | ForEach-Object {
Write-Output " |- $($_.Name)"
}
Write-Output "======"
}