2017-05-17 111 views
1

我可以舉例來說做到這一點:如何從ls中獲取全名,路徑和文件名?

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 

回答

3

ls別名Get-ChildItem,所以你將會找到關於這個here的大量信息(你也可以通過輸入Get-Help Get-ChildItem找到這個信息)。要獲得整個路徑,只需省略-Name開關。根據您的管道目標需求,您可能需要選擇FullName

例子:

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

我對編輯後添加的速記符號'GCI的篩選器 '*的.cpp' dabling |選擇全名「。這將表明,你可以是冗長或非常簡潔,只要你喜歡,但它也可能開始壞習慣...我會讓你決定:) –

+0

@LievenKeersmaekers我傾向於*永遠不會*在別名上使用別名和我的腳本,因爲它使他們更難閱讀。我確實在交互式cmdline上使用它們;-) –

+1

@LievenKeersmaekers - 別名可能不存在於任何特定系統上,或者可能已被重新定義,因此我將在解釋或腳本中使用完整的cmdlet以確保正確的cmdlet是實際上正在使用。爲了清楚起見,我通常也不會使用位置參數,但始終使用參數名稱。 –