В этом случае вам потребуется эквивалент Bash's подстановки процесса (<(...)
), который, в двух словах, позволил бывы должны представить команды * output в качестве содержимого временного файла , чей path выводится:
.\scripts.ps1 -d <(... | ConvertTo-Csv) # !! does NOT work in PowerShell
Примечание:... | ConverTo-Csv
обозначает любую команду, необходимую для преобразования исходной CSV-памяти.
В PowerShell такой функции не существует, начиная с Windows PowerShell v5.1 / PowerShell Core v6.1, но было предложено .
Если .\scripts.ps1
также принимает вход stdin (через псевдотрассу * 1033)* с указанием ввода stdin), вы можете попробовать:
... | ConvertTo-Csv | .\script.ps1 -d -
В противном случае , ваш единственный вариант:
- сохранить ваши измененные данные CSV в временный файл
- передать путь временного файла в
.\script.ps1
- удалить временный файл.