繁体   English   中英

如何列出和打印目录中的文件?

[英]How can I list and print files in a directory?

我正在尝试此操作,但它不打印任何内容:

Dir -Recurse "C:\temp" | Select Fullname

看起来这个命令只是选择文件名。 我想在控制台中看到它们。

看看Get-Childitem

Dir -Recurse c:\path\ | Get-Childitem

关于您在问题中的代码。

您的命令应该按原样工作。 事实上,您已经在调用Get-ChildItem 如果您检查Get-Alias您将看到我想告诉您的内容。

PS C:\users\Cameron\Downloads> Get-Alias dir

CommandType     Name                                               ModuleName                                                                                               
-----------     ----                                               ----------                                                                                               
Alias           dir -> Get-ChildItem  

您的代码转换为

Get-ChildItem -Recurse "C:\temp" | Select Fullname

同样,我不确定为什么您的代码不生成输出,因为在包含文件或目录的文件夹上这完全没问题。 可能是位置参数的问题? 你的 PowerShell 版本是什么? (使用Get-Host )。

您拥有的代码会将所有文件路径发送到控制台。 你想要其他地方的输出吗?

关于接受的答案

如果路径中有文件夹,则可以肯定此代码会将输出加倍,因为目录将输出到第二个Get-ChildItem

Dir -Recurse c:\path\ | Get-Childitem

考虑以下文件夹树

C:\TEMP\TEST
│   File1.txt
│   File2.txt
│
└───Folder1
        File3.txt

考虑针对该文件夹树运行的两个命令。

PS C:\users\Cameron\Downloads> Dir -Recurse c:\temp\test | Select Fullname

FullName                                                                                                                                                                    
--------                                                                                                                                                                    
C:\temp\test\Folder1                                                                                                                                                        
C:\temp\test\File1.txt                                                                                                                                                      
C:\temp\test\File2.txt                                                                                                                                                      
C:\temp\test\Folder1\File3.txt                                                                                                                                              



PS C:\users\Cameron\Downloads> Dir -Recurse c:\temp\test | Get-Childitem | Select Fullname

FullName                                                                                                                                                                    
--------                                                                                                                                                                    
C:\temp\test\Folder1\File3.txt                                                                                                                                              
C:\temp\test\File1.txt                                                                                                                                                      
C:\temp\test\File2.txt                                                                                                                                                      
C:\temp\test\Folder1\File3.txt   

第二个命令显示了两个名为File3.txt文件,而实际上只有一个。

get-childitem | format-list > filename.txt 

这将为您提供一个包含名称、大小、最后修改时间等的文本文件。

如果您想要项目中的特定参数...例如文件名,只有命令是

get-childitem | format-list name > filename.txt

这是给你相同的文本文件,但只列出文件的名称。

可能还值得一提的是查看隐藏物品所需的 -force 开关。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM