我试图在一个文件夹中读取文本文件,并通过两个工作流读取内容。是否有可能在另一个工作流中调用一个工作流?
workflow ReadFilesFromFolder
{
$folderPath = 'C:UsersMyNameMyFolder'
Get-ChildItem $folderPath -Filter *.txt |
Foreach-Object {
ReadTextFile $_.FullName
}
}
workflow ReadTextFile
{
param($path)
$lines = Get-Content $path
ForEach -Parallel ($line in $lines)
{
$line
}
}
PS: Foreach parallel只接受工作流
您必须显式地用名称指定参数。它看起来也像你不能调用Foreach-Object
cmdlet内的工作流-然而foreach
似乎工作:
workflow ReadFilesFromFolder
{
$folderPath = 'C:UsersMyNameMyFolder'
$items = Get-ChildItem $folderPath -Filter *.txt
foreach($item in $items)
{
ReadTextFile -path $item.FullName
}
}
workflow ReadTextFile
{
param($path)
$lines = Get-Content $path
ForEach -Parallel ($line in $lines)
{
$line
}
}