powershell - 将 Write-Host 的输出通过管道传输到其他命令
问题描述
我有这个脚本,它可以根据某些自助餐厅查找文件并使用 Write-Host 编写它们的路径。现在,我想通过管道传输所有这些文件路径,并对这些文件进行处理。
基本上第一个脚本是这样的:
FindFiles.ps1:
Write-Host "C:\SomeDir\file1.txt"
Write-Host "D:\OtherDir\file2.txt"
现在我想做这样的事情:
FindFiles.ps1 | foreach { Copy-Item $_ c:\backup\ }
但显然这不起作用。(实际上我想做一些比复制文件夹更复杂的事情,但这是另一个问题:-))
解决方案
Write-Host
特别是只打印到控制台,它不会“返回”任何东西。
如果您将脚本更改为仅输出字符串,它将起作用。
从:
Write-Host "C:\SomeDir\file1.txt"
Write-Host "D:\OtherDir\file2.txt"
到:
"C:\SomeDir\file1.txt"
"D:\OtherDir\file2.txt"
推荐阅读
- reactjs - 如何在 mern 堆栈中获取注册表单的国家/地区列表?
- google-apps-script - 将 ImportRange 生成的 Google 电子表格单元格值自动传输到另一个工作表和单元格
- wix - WIX:仅阻止更新某些旧版本
- c++ - 如何使用数组打印 10 位大数字的反转?
- mongodb - MongoDB $sample 很慢
- oauth-2.0 - 拒绝在框架中显示“google oauth2”,因为它将“X-Frame-Options”设置为“DENY”
- html - 如何使用 CSS 中的 :nth-child() 属性在列表中添加背景颜色(在链接中显示参考图像)
- asp.net-web-api - Postman 无法访问从 Visual Studio 2019 运行的基于 Windows 身份验证的 WebAPI
- python - 如何对csv文件的行进行排序?
- javascript - 我试图运行命令 Discord.js 但出现错误“TypeError:无法读取未定义的属性'get'”