我正在尝试打开目录中的 20 多个 .txt 文件。我将 shell 导航到该目录并尝试发出以下命令,但失败了:
./*.txt
//但是 t6.txt 是目录中的一个文件,命令 ./t6.txt 可以打开单个文件notepad.exe Get-ChildItem .\*.txt
由于 notepad.exe .\t6.txt 有效,我尝试了这个notepad.exe | Get-ChildItem *.txt
打开一个未命名的空白记事本实例?!
我找到了一些非常好的答案,它们提供了解决方案包括这个!
我认为我对 shell 内部的工作方式存在根本性的误解。我很惊讶在其他地方找不到这个问题。我认为对这些陈述如何愚蠢/愚蠢/糟糕的解释可能会为我提供必要的背景信息,让我能够正确解释文档并消除我的想法。提前感谢你的帮助
答案1
您将需要一个如下脚本:
get-childitem *.txt |foreach-object {
notepad $_.name
}
这基本上将对所有 txt 文件的查询结果对象传送到 foreach 对象中,然后逐个名称遍历结果集并执行命令。