【发布时间】:2018-02-22 23:11:12
【问题描述】:
我是脚本(或任何类型的编码)的新手。我有一个问题,我想为目录目录和某些文件名生成 csv 文件以帮助我的工作。我能够将一些适合我需要的东西放在一起。除了一个例外,长名称返回以下错误:
错误:指定的路径、文件名或两者都太长。完全限定的文件名必须少于 260 个字符,目录名必须少于 248 个字符。
这是我的脚本:
Write-Host "Andy's File Lister v2.2"
$drive = Read-Host "R or Q?"
$client = Read-Host "What is the client's name as it appears on the R or Q drive?"
$path= "${drive}:\${client}"
Get-ChildItem $path -Recurse -dir | Select-Object FullName | Export-CSV $home\downloads\"$client directories.csv"
Get-ChildItem $path -Recurse -Include *.pdf, *.jp*, *.xl*, *.doc* | Select-Object FullName | Export-CSV $home\downloads\"$client files.csv"
Write-Host "Check your downloads folder."
Pause
正如我所说,我对此很陌生。我可以使用不同的命令,或者告诉脚本跳过一定长度的目录名或文件吗?
谢谢!
【问题讨论】:
-
仅供参考:限制是旧限制。在 Windows 10 中,您可以通过策略设置启用长文件路径支持,这将解决问题。如果您使用的是旧版本,您可以使用 PInvoke 来获得对长文件路径的支持。
标签: powershell