Windows PowerShell的“管道”以及对可执行文件的文件重定向

您所在的位置:网站首页 文本重定向 Windows PowerShell的“管道”以及对可执行文件的文件重定向

Windows PowerShell的“管道”以及对可执行文件的文件重定向

#Windows PowerShell的“管道”以及对可执行文件的文件重定向| 来源: 网络整理| 查看: 265

文章目录 起因PowerShell管道从文件传入输出到文件把指令连接起来总结

起因

在C++ Primer中文第五版的第19页中,书上提到了一个文件重定向的功能: 在这里插入图片描述

由于我最近一直使用powershell进行编译和运行,在使用时发现这么写并不能正常运行,会提示如下信息:

“ output是可以使用的,但是事实上这并不符合PowerShell的管道规范(当然还是可以使用的,不过这里要说明管道的使用,只能委屈它一下了),于是我又找到了通用的输出文件的形式: 输出到文件

与输入文件指令一样,我们先上指令的标准形式:

Get-Process | Out-File -FilePath outputPath -Encoding ASCII

这就是一个非常标准的管道使用范例了,前面的Get-Process是获得当前所有进程的指令,但是可以换成任意我们需要的指令,例如我们可以在这里使用一个Get-Content指令,从一个文件中读取内容,并将它们输出到另一个文件中。 指令的最后是-Encoding ASCII,由于默认保存是unicode(在我的系统中出来默认是UTF16),所以这里可以用于指定特定编码进行保存。 先进行一下测试 ,我们把"ABCDEFG"的字符串保存到output.txt文件中: 在这里插入图片描述 保存成功: 在这里插入图片描述

把指令连接起来

在有了这些基础知识,我们就可以完成完成的指令了,比如我这里有一个for.exe文件,需要传入两个数,它会将这两个数之间的所有整数从小到大输出,我们还是从input.txt输入,从output.txt输出。 input.txt文件内容如下:

10 20

output.txt文件是空白。

输入指令

PS> Get-Content input.txt | .\for | Out-File output.txt

成功得到结果: 在这里插入图片描述

总结

相对CMD的指令而言,powershell的管道指令看起来确实要麻烦一些,但是在实际运行中会发现这一套运行逻辑更加容易使用,它可以方便地组合各种各样的指令来实现想要的功能,而CMD中对不同的指令必须使用它所定义的参数。



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3