Powershell_6

powershell_6 深入理解管道

我们在传统写脚本的时候,需要使用模块的思路来进行,例如在某个场景中,先需要生成一个文件,然后再从文件中读取内容,这时候如果用管道来完成,就可以省去这个过程,直接调用管道来进行传递。

第一种管道的使用 byvalue进行管道功能

by value的意思传递值
例如这个例子

1
get-process -name note* | stop-process

这个命令的意思是获取进程中有note的进程,然后传递给stop-process,然后停止进程
其中使用的byvalue的意义就是-name这个参数,如果在第一个命令中没有获取到-name的参数,那么第二个参数也不成立,所以一般都是在例如这种命令下进行执行
get-process -name note
| stop-process
就是一个获取,一个执行,如果前面是get-service,那后面因为找不到,也就执行不了

这里有个查看命令属性的命令

第二种管道的使用 bypropertyname进行管道功能

第二种管道和第一种的区别在于,第二种可以指定多个选项来进行适配,这样我们前面的get-service 和 管道 stop-process就可以进行正常工作了