Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell 如何从ls获取全名、路径和文件名?_Powershell - Fatal编程技术网

Powershell 如何从ls获取全名、路径和文件名?

Powershell 如何从ls获取全名、路径和文件名?,powershell,Powershell,例如,我可以这样做: PS C:\Builds\Main\> ls "C:\Builds\Main\Prod\Core\prodXML\prodXML\prodXMLElement.cpp" -Name 但是输出是prodXMLElement.cpp 我想通过管道将ls的输出传输到一个控制台程序,该程序需要完整的文件名,包括目录,因此我想得到: C:\Builds\Main\Prod\Core\prodXML\prodXML\prodXMLElement.cpp ls是Get Chil

例如,我可以这样做:

PS C:\Builds\Main\> ls "C:\Builds\Main\Prod\Core\prodXML\prodXML\prodXMLElement.cpp" -Name
但是输出是
prodXMLElement.cpp

我想通过管道将ls的输出传输到一个控制台程序,该程序需要完整的文件名,包括目录,因此我想得到:

C:\Builds\Main\Prod\Core\prodXML\prodXML\prodXMLElement.cpp
ls
Get ChildItem
的别名,因此您可以找到大量有关此项的信息(您也可以通过键入找到此信息)。要获取整个路径,只需省略
-Name
开关。根据管道目标的期望,您可能必须选择
全名

示例:

Get-ChildItem -Filter '*.cpp' | Select-Object -ExpandProperty FullName

我正在尝试编辑您的帖子,添加简写符号
gci-filter'*.cpp'|选择全名
。这将表明你可以像你喜欢的那样冗长或非常简洁,但也可能会养成坏习惯。。。我会让你决定:)@LievenKeersmaekers我倾向于从不在SO和我的脚本上使用别名,因为这会使它们更难阅读。我确实在交互式cmdline上使用它们;-)@LievenKeersmaekers-别名可能不存在于任何特定系统上,或者可能已被重新定义,因此我将在解释或脚本中使用完整的cmdlet,以确保实际使用了正确的cmdlet。我通常也不依赖位置参数,但为了清楚起见,我总是使用参数名。@JffZeitlin感谢添加链接。所有这些都是真的,没有参数,但新来者无疑会访问,并且可能会因为命令的长度而延迟。在首选方式旁边显示简短的备选方案,并附上必要的警告,可能会更快地吸引他们(或养成坏习惯)。只是大声想一想,这应该是元无论如何。