Char 06 管道:连接命令

Desc :

  PowerShell 的 管道 ,类似于 Unix 中的 Shell

1  Dir | More

2  输出结果到 csv or html ]

  1)  Get-Process | Export-CSV process.csv

        几乎可以把所有的  Get-Cmdlet 的 用管道输出到 CSV

     Notepad process.csv

        可以发现 , CSV 中的数据,多于 命令行中,显示的信息 , 因为 PowerShell 使用的 微软提供的配置文件,将 最重要的信息,显示到屏幕上

     Import-CSV process.csv

      

  2)  Get-Process | Export-CliXML.xml

     Import-CliXML XX.xml

     NOTE :

      所有的 Export-XXX , Import-XXX 的 cmdlets 都强制需要提供 文件名作为 参数

    

PS C:\windows\system32> Get-Command -verb Import

CommandType     Name                                               ModuleName
-----------     ----                                               ----------
Function        Import-IseSnippet                                  ISE
Cmdlet          Import-AGRestApi                                   AWSPowerShell
Cmdlet          Import-Alias                                       Microsoft.PowerShell.Utility
Cmdlet          Import-BinaryMiLog                                 CimCmdlets
Cmdlet          Import-Clixml                                      Microsoft.PowerShell.Utility
Cmdlet          Import-Counter                                     Microsoft.PowerShell.Diagnostics
Cmdlet          Import-Csv                                         Microsoft.PowerShell.Utility
Cmdlet          Import-EC2Image                                    AWSPowerShell
Cmdlet          Import-EC2Instance                                 AWSPowerShell
Cmdlet          Import-EC2KeyPair                                  AWSPowerShell
Cmdlet          Import-EC2Snapshot                                 AWSPowerShell
Cmdlet          Import-EC2Volume                                   AWSPowerShell
Cmdlet          Import-LocalizedData                               Microsoft.PowerShell.Utility
Cmdlet          Import-Module                                      Microsoft.PowerShell.Core
Cmdlet          Import-PSSession                                   Microsoft.PowerShell.Utility               
PS C:\windows\system32> Get-Command -verb Export

CommandType     Name                                               ModuleName
-----------     ----                                               ----------
Cmdlet          Export-Alias                                       Microsoft.PowerShell.Utility
Cmdlet          Export-BinaryMiLog                                 CimCmdlets
Cmdlet          Export-Clixml                                      Microsoft.PowerShell.Utility
Cmdlet          Export-Console                                     Microsoft.PowerShell.Core
Cmdlet          Export-Counter                                     Microsoft.PowerShell.Diagnostics
Cmdlet          Export-Csv                                         Microsoft.PowerShell.Utility
Cmdlet          Export-FormatData                                  Microsoft.PowerShell.Utility
Cmdlet          Export-ModuleMember                                Microsoft.PowerShell.Core
Cmdlet          Export-PSSession                                   Microsoft.PowerShell.Utility                                                                                                                

  3  对比文件

    Export-CliXML 比 Export-CSV 包含更多的信息    

    

PS D:\test_powershell> diff -ReferenceObject (Import-Clixml  .\before.xml) -DifferenceObject ( Import-Clixml .\after.xml )

InputObject                                                                                             SideIndicator
-----------                                                                                             -------------
System.Diagnostics.Process (YoudaoDictHelper)                                                           =>
System.Diagnostics.Process (YoudaoIE)                                                                   =>
System.Diagnostics.Process (YoudaoWSH)                                                                  =>
System.Diagnostics.Process (ZhuDongFangYu)                                                              =>                                                                                                     

3  管道 传输到 文件 或者 打印机上

PS D:\test_powershell> dir > directorylist.txt

PS D:\test_powershell> Dir | Out-File .\directorylist_2.txt  【底层调用】

PS D:\test_powershell> Dir | Out-Default | Out-Host

    目录: D:\test_powershell

Mode                LastWriteTime     Length Name
----                -------------     ------ ----
-a---         2016/6/20     11:12   20117840 after.xml
-a---         2016/6/20     11:11   19724196 before.xml
-a---         2016/6/20     11:17       2458 directorylist.txt
-a---         2016/6/20     11:17       2928 directorylist_2.txt                                                                                                                                              HT

  Note : help Out* == Get-Command Out* == Get-Command -Verb Out

4  转换成 HTML

  Get-Service | ConvertTo-HTML | Out-File services.html

  ConvertTo-HTML | Out-File services.html == Export-XX

  存在的意义?

    有时,只想转换,而不保存

  

PS D:\test_powershell> Help ConvertTo*

Name                              Category  Module                    Synopsis
----                              --------  ------                    --------
ConvertTo-Csv                     Cmdlet    Microsoft.PowerShell.U... 将对象转换为一系列逗号分隔值 (CSV) 可变长度字符串。
ConvertTo-Html                    Cmdlet    Microsoft.PowerShell.U... 将 Microsoft .NET Framework 对象转换为可在 Web 浏览器中显示的 HTML。
ConvertTo-Json                    Cmdlet    Microsoft.PowerShell.U... 将对象转换为 JSON 格式的字符串
ConvertTo-Xml                     Cmdlet    Microsoft.PowerShell.U... 创建对象的基于 XML 的表示形式。
ConvertTo-SecureString            Cmdlet    Microsoft.PowerShell.S... ...                                                                                                                                      

5  使用 Cmdlets 修改系统 : 终止进程 和 停止服务

  Get-Process | Stop-Process :会依次检索&& stop , 会宕机哦

  Get-Process -name Notepad | Stop-Process

  

PS D:\test_powershell> $ConfirmPreference
High

  对于 Stop-Process , 会 询问 Are You Sure ?

  Get-Service -name Notepad | Stop-Process -confirm

    每一次 都询问

  

6  常见误区

  在 PowerShell 中, Export-XX , Import-XX , 是一组命令, Import-XX ,会 尝试解析,编译这些数据

  仅从 一个文本文件中读取内容,而不需要解析数据时,才使用 Get-Content, 只用于,只需要,原始内容时

Test :

  Export-CSV  改变默认的分隔符

    

时间: 2024-11-06 01:29:20

Char 06 管道:连接命令的相关文章

IO-05内存操作流06管道流

JAVA中可以将输出的位置设置在内存上,此时使用ByteArrayInputStream,ByteArrayOutputStream来完成输入,输出功能. 利用这两个类实现大小字母的转换: package lianxijihe; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; impo

「JLOI2015」管道连接 解题报告

「JLOI2015」管道连接 先按照斯坦纳树求一个 然后合并成斯坦纳森林 直接枚举树的集合再dp一下就好了 Code: #include <cstdio> #include <cctype> #include <cstring> #include <algorithm> using std::min; const int N=1<<10; template <class T> void read(T &x) { x=0;cha

Redis05——Redis高级运用(管道连接,发布订阅,布隆过滤器)

Redis高级运用 一.管道连接redis(一次发送多个命令,节省往返时间) 1.安装nc yum install nc -y 2.通过nc连接redis nc localhost 6379 3.通过echo向nc发送指令 echo -e "set k2 99\nincr k2\n get k2" |nc localhost 6379 二.发布订阅(pub/Sub) publish channel message subscribe channel 三.事务(transactions)

sqlplus登录、连接命令

经常使用: sqlplus username/password  如:普通用户登录  sqlplus scott/tiger sqlplus username/[email protected]net_service_name 如: sqlplus scott/[email protected] sqlplus  username/password as sysdba 如:sqlplus sys/admin as sysdba sqlplus username/[email protected]

Akka(22): Stream:实时操控:动态管道连接-MergeHub,BroadcastHub and PartitionHub

在现实中我们会经常遇到这样的场景:有一个固定的数据源Source,我们希望按照程序运行状态来接驳任意数量的下游接收方subscriber.又或者我需要在程序运行时(runtime)把多个数据流向某个固定的数据流终端Sink推送.这就涉及到动态连接合并型Merge或扩散型Broadcast的数据流连接点junction.从akka-stream的技术文档得知:一对多,多对一或多对多类型的复杂数据流组件必须用GraphDSL来设计,产生Graph类型结果.前面我们提到过:Graph就是一种运算预案,

2016022613 - redis连接命令集合

redis连接命令 1.ping 用途:检查服务器是否正在运行 返回数据pong,表示服务器在运行. 2.quit 用途:关掉当前服务器连接 3.auth password 用途:服务器验证密码 没有设置密码 4.select index 用途:更改当前所选的数据库

实现:ipc$命名管道连接

#include <windows.h> #include <WinNetWk.h> #include <iostream> #pragma comment(lib, "Mpr.lib") using namespace std; int wmain(int argc,wchar_t * argv[]) { /* DWORD WNetAddConnection2W( LPNETRESOURCEW lpNetResource, LPCWSTR lpPa

C语言学习009:管道连接输入输出

现在我们需要对gpsdata.csv文件中的数据进行筛选,然后将符合条件的数据输出到output.json文件中,第一种方式当然是在之前的代码中进行修改,但是如果我们不想修改原来的代码就能得到我们期望的结果,该如何实现呢? 42.0908,-71.2316,speed=21 37.1908,-74.2322,speed=19 42.0908,-71.3312,speed=20 44.5908,-70.2314,speed=17 39.0908,-62.2512,speed=19 43.0908,

实现:ipc管道连接到远程计划任务种马

#pragma comment(lib, "mpr.lib") #pragma comment(lib,"Netapi32.lib") #include <windows.h> #include <lm.h> #include <tchar.h> #include <stdio.h> #include <Winnetwk.h> #include <string> #include <lma