我正在尝试在日志文件中搜索未安装的更新,然后使用返回的阵列安装更新。问题是我的文件命名为:
Windows6.1-KB3102429-v2-x64.msu
我的解析数组有一个项KB3102429
如何使用外卡 - 调用数组项 - 然后另一个外卡.msu
我的代码如下:
# Read KBLIST.txt and create array of KB Updates that were not installed
$Failed = Get-Content -Path C:/Updates/KBLIST.txt | Where-Object {$_ -like '*NOT*'}
# create a list of all items in Updates folder
$dir = (Get-Item -Path "C:\Updates" -Verbose).FullName
# Parse the $Failed array down to just the KB#######
for($i = $Failed.GetLowerBound(0); $i -le $Failed.GetUpperBound(0); $i++)
{
$Failed[$i][1..9] -join ""
# Search the $dir list for files that contain KB####### and end in .msu then quiet install
Foreach($item in (ls $dir *$Failed[$i]*.msu -Name))
{
echo $item
$item = "C:\Updates\" + $item
wusa $item /quiet /norestart | Out-Null
}
}
它适用于Foreach($item in (ls $dir *$Failed[$i]*.msu -Name))
。
如果我只使用*
而不是wildcard,string,wildcard
,则会返回所有.msu
文件的列表,以获取正确的基本语法。
答案 0 :(得分:1)
由于您使用了别名,因此很难跟进您的工作,但我认为这应该能够实现您所需的目标。
final_list=[]
for i in itertools.permutations(input,r=2):
final_list.append((i[0]-i[1]))
print(final_list)