说我有以下文件结构
L:\Enterprise\Legal\Planning\Contacts\A-D\
在A-D下,我有50个以公司名称命名的文件夹。所以它看起来像这样
L:\Enterprise\Legal\Planning\Contacts\A-D\3-M Company\subfolder\sub-subfolder\files.txt
L:\Enterprise\Legal\Planning\Contacts\A-D\ABC Company\subfolder\sub-subfolder\files.txt
L:\Enterprise\Legal\Planning\Contacts\A-D\XYZ Company\subfolder\sub-subfolder\files.txt
L:\Enterprise\Legal\Planning\Contacts\A-D\AAA Company\subfolder\sub-subfolder\files.txt
有没有办法使用PowerShell或某些Windows脚本从上面的文件结构中获取公司名称?
答案 0 :(得分:1)
如果您的目标是以一种方式获得公司名称列表:
cd L:\Enterprise\Legal\Planning\Contacts\A-D\
dir | select -expand fullname | % { ($_ -split '\\')[6] }
有些人也可能会发现这可行
dir | select -expand fullname | % { ($_ -split '\\')[7] }
答案 1 :(得分:0)
如果要从CSV导入文件/文件夹列表,则可以执行以下操作:
$strings = Import-CSV -Path "C:\PathToCSV.csv"
foreach ($string in $strings) {
$string -replace 'L:\\Enterprise\\Legal\\Planning\\Contacts\\A-D\\' -replace '\\subfolder\\sub-subfolder\\files.txt'
}
请注意双斜线(\\)。你必须逃避斜线,否则他们被视为特殊。输出应如下所示:
3-M Company
ABC Company
XYZ Company
AAA Company