Powershell 入门之管道和文件重定向

今天我们就来一起看看 powershell 中的管道符,使用 “|” 表示.

我们先来看两个命令:
从第二个命令,我们应该就能看出了管道符的作用,就是将第一个命令的输出,作为第二个命令的输入。我们通过 “Get-ChildItem -Path c:\” 获取 C 盘下的子文件及目录,然后将结果传递给 Format-Table 进行格式化输出,我们在后面加了参数 Name,所以只显示了 Name 一列。

PS C:\Users\Administrator> Get-ChildItem -Path c:\


    Directory: C:\


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----         6/5/2021   9:22 PM                PerfLogs
d-r---        9/13/2021   8:06 PM                Program Files
d-----        9/15/2018   2:08 AM                Program Files (x86)
d-r---        9/10/2021  12:52 AM                Users
d-----        9/13/2021   7:23 PM                Windows


PS C:\Users\Administrator> Get-ChildItem -Path c:\ | Format-Table Name

Name
----
PerfLogs
Program Files
Program Files (x86)
Users
Windows

通过管道符,我们可以将命令的结果,直接输出到文件:

PS C:\Users\Administrator> Get-ChildItem -Path c:\ | Out-File C:\1.csv

打开 C 盘,我们可以看到,有一个 1.csv 文件:
https://ithelp.ithome.com.tw/upload/images/20210916/20099494vzkPS0HtNO.png

使用同样的方法,我们可以丢弃命令的输出:

PS C:\Users\Administrator> Get-ChildItem -Path c:\ | Out-Null

我们还可以通过重定向的方式,将命令的结果输出到文件:

PS C:\Users\Administrator> Get-ChildItem -Path c:\ > c:\2.csv

在 C 盘,你可以看到一个 2.csv 的文件:
https://ithelp.ithome.com.tw/upload/images/20210916/20099494FaW8FJ2SFA.png

当你再次运行命令查看另一个目录,并重定向到文件:

PS C:\Users\Administrator> Get-ChildItem -Path C:\Users\ > c:\2.csv

文件内容被清空,重新写入了:
https://ithelp.ithome.com.tw/upload/images/20210916/20099494URbHAo3AtB.png

如果你想保存文件的原有内容,你需要使用 >> 进行重定向:

PS C:\Users\Administrator> Get-ChildItem -Path c:\ >> c:\2.csv

验证:
https://ithelp.ithome.com.tw/upload/images/20210916/20099494GrussDbqxa.png


<<:  前言:新手入门–忐忑不安的开始

>>:  #2 JavaScript Crash Course 1

Re: 新手让网页 act 起来: Day16 - 探索 useState (2)

昨天我们成功的完成一个超简略版的 myUseState ,今天就让我们再来把它写完整一点吧! let...

Re: 新手让网页 act 起来: Day27 - React Hooks 之 useImperativeHandle 与 React.forwardRef

前言 在 React hooks 中 useImperativeHandle 是一个相对较少使用的 ...

[Day - 29] - 深透 Spring Actuator 创造系统服务监视神之眼

Abstract 大家好,我是游戏王怪兽之决斗小编威斯~~丁,想必大家都知道游戏王的贝卡斯的千年眼可...

Day 03 - 动态调整的PM职涯规划(2)

图片来源 继续上一篇的目标设定, 有时候我觉得是因为你心中已有一个"既定的目标"...

Day22-TypeScript(TS)的函式(Function) Part2

昨天讲的将函式(Function)加入型别相信大家都了解了, 今天就带大家来看看**完整函式型别(W...