簡體   English   中英

從foreach-object解析對象變量

[英]resolve object variable from foreach-object

我正在嘗試從擴展名為.sdbz的文件夾中的所有存檔中提取擴展名為.sddb的所有文件。

這是我嘗試的方法:

從包含文件test.sdbz的文件夾中

get-childitem -filter "*.sdbz" | ForEach-Object {.\7za.exe x $_.Name -o *.sddb}

似乎$ _。Name無法解析,因為如果我使用命令

7za.exe x test.sdbz -o *.sddb

從命令行運行正常。

有人能幫助我嗎? 提前致謝!

首先,感謝所有答復。 我發現了我的錯誤和解決方案。

我誤以為在cmd可以使用的命令在PowerShell中也可以使用。

CMD版本

"7za.exe x test.sdbz -o.\ *.sddb"

-o.\\告訴7zip將所有內容提取到工作目錄中。

它可以在cmd中工作,但不能在powershell中工作。

PowerShell版本

這是我解決的方法:

$workingdirectory = pwd
dir -filter "*.sdbz" | ForEach-Object {
.\7za.exe x $_.Name -o"$workingdirectory" *.sddb}

因此, $_.Name部分一直有效。 xD

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM