在PowerShell中使用Windows命令提示符-网络驱动器

时间:2018-10-12 15:46:38

标签: powershell command-line directory

我无法从命令提示符转到Powershell。通常,我在右键单击时按住Shift键,选择“在此处打开命令提示符”,然后使用dir /s>filename.txt获取目录及其子文件夹中所有文件的列表。但是,我的公司刚刚更新了我们的计算机,现在我无法从试图获取其目录列表的网络文件夹中访问命令提示符。

当我右键单击并按住Shift键时,没有从我选择的文件夹中“打开命令提示符”的选项。我手动打开了命令提示符,并尝试导航到网络文件夹,但没有骰子。我收到有关UNC(?)的错误消息,或者因为它是网络文件夹,所以基本上无法执行此操作。

我尝试使用Powershell的方式与使用命令提示符作为答案Here的方式相同,但是却收到错误消息

PS Microsoft.PowerShell.Core\FileSystem::\\my.company.com\companydata\MainProject\Records\Field Work\Invoices> dir /s >file.txt
dir : Cannot find path 's' because it does not exist.
At line:1 char:1
+ dir /s >file.txt
+ ~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (s:String) [Get-ChildItem], ItemNotFoundException
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand

我还尝试重新设置扩展的右键单击+ Shift键列表中的命令提示符选项,如详细说明here。但是,我没有运行所有步骤所需的权限。

我只需要指定网络文件夹中所有内容的目录,只需文件夹和子文件夹中所有文件的列表即可:文件路径,文件名和创建日期。我曾经能够使用命令提示符来获取它,但是显然不可用。我不确定如何使用Powershell,在获得新的,简单的,易于理解的Powershell资源以便我可以自学的过程中,或者在找到解决方法以便可以继续使用命令提示符时,帮助是非常感谢的。

是否可以使用从命令提示符到Powershell的解释指南,并且还可以列出网络驱动器中的文件? (我可以有点了解当前在计算机目录中具有Powershell列表文件的资源,但是我需要能够在指定的网络文件夹中列出文件的Powershell。)

1 个答案:

答案 0 :(得分:2)

在powershell中,dirGet-ChildItem的别名,我相信您会遇到此错误,因为开关/参数在PowerShell中的工作方式不同。按位置的第一个参数是Path,因此系统认为您正在为路径提供值/s

您可以在PowerShell中执行此操作,而不必利用Get-ChildItem启动cmd。如您所见,包括子文件夹在内的完整结构是用户-Recurse

您还可以导出到csv而不是文本文件。数据很多-Select可用于限制您导出的字段。

$Path = "\\my.company.com\companydata\MainProject\Records\Field Work\Invoices"
$Files = Get-ChildItem -Path $Path -Recurse
$Files | Out-file file.txt
$Files | Select-Object FullName,CreationTime | Export-Csv file.csv -NoTypeInformation
相关问题