当前位置: 首页 > 编程笔记 >

CMD命令行管道命令使用介绍

翟冷勋
2023-03-14
本文向大家介绍CMD命令行管道命令使用介绍,包括了CMD命令行管道命令使用介绍的使用技巧和注意事项,需要的朋友参考一下

一、什么是管道命令

  管道命令能够将一个命令的执行结果经过筛选,只保留我们需要的信息。
  如 dir 命令会显示目录下所有文件夹和文件,可以使用管道命令| findstr "" 将dir的结果进行筛选,只保留需要的信息

| 命令管道符

格式:第一条命令 | 第二条命令 [| 第三条命令...]
将第一条命令的结果作为第二条命令的参数来使用,记得在unix 中这种方式很常见。

例如:

dir c:\|find "txt"

以上命令是:查找C:\所有,并发现TXT 字符串。

FIND 的功能请用 FIND /? 自行查看

在不使format 的自动格式化参数时,我是这样来自动格式化A 盘的
echo y|format a: /s /q /v:system
用过format 的都知道,再格盘时要输入y 来确认是否格盘,这个命令前加上echo y 并用|字符来将echo y
的结果传给format 命令
从而达到自动输入y 的目的
(这条命令有危害性,测试时请慎重)

最常用的输出y给后面的语句

echo y|delete *.txt /s

二、管道命令的使用

1、Windows netstat 查看端口、进程占用

// 假如我们需要确定谁占用了我们的9050端口

C:/>netstat -aon|findstr "9050"
TCP 127.0.0.1:9050 0.0.0.0:0 LISTENING 2016
// 看到了吗,端口被进程号为2016的进程占用,继续执行下面命令:
C:/>tasklist|findstr "2016"
tor.exe 2016 Console 0 16,064 K
// 很清楚吧,tor.exe 占用了你的端口

2、查看文件夹目录结构

tree > list.txt

tree /f >list.txt

3、输入输出重定向

echo -c // -c:不换行,linux下则是-n

输入输出重定向:
    每执行一个命名,都会有3个与之相关的文件.标准输入文件,标准输出文件,错误输出文件.
    因为unix/linux下把任何一个设备都当作文件看待,所有实际上标准输入文件是键盘,
    标准输出和错误输出文件是屏幕.
>      输出重定向
<      输入重定向
<<   输入追加
>>   输入追加
文件描述符:
    每一个文件可以用文件描述符来描述,系统提供12个,3-9可以任意定义.0-2系统定义如下:
0  标准输入  键盘
1  标准输出  显示器
2  错误输出  显示器
即可以用0-2代表上面的3个文件.
例如:cmd>file     //cmd的输出重定向到file文件
     cmd>>file    //cmd的输出追加到file中,无则创建
     cmd 1>file   //把运行cmd的shell的标准输出重定向到file中,1代表标准输出
     cmd>file 2>&1  //把cmd的输出重定向到file,同时把2(错误输出)重定向到1(标准输出).
                                   2 > 1 则会把1当成文件,所有把错误定向到1必须使用&1.
     cmd 2>file    //把错误输出定向到file中
     cmd>>file 2>&1  //把错误和cmd输出追加到file中,cmd>>file,追加;2>&1,错误定向到
                                       标准输出,标准输入又追加到file中,所以错误和cmd输出都追加到file
     cmd 1>>file 2>&1  //可以把此命令等效于上一个命令
     cmdfile2   //cmd的输入是file1,结果输出到file2
     cmd<<END          //cmd使用标准输入,直到遇到END则退出.END可为任意一个字符
                                 理解:cmd使用默认的标准输入,运行,碰到END,则追加,但是标准输入输出
                                 不能追加,于是出错退出.
                            注:经试验理解不对,据linux shell编程25章的说法,
                           这是shell定的语法.可以直接理解成END为分隔符.
     cmd<&m          //把文件描述符m作为cmd的输入
     cmd>&m          //把文件描述符m作为cmd的输出
     cmd<&-          //关闭标准输入.
!!!注意:
1. 输入输出定向符前面不要加空格,否则容易出意想不到的问题
2. 0 1 2不能使用>>或<<定向符,例: 2>>&1 出错

使用管道符来自动输入y/n

在工作中有时候调用cmd命令会出现提示信息,譬如使用pscp的时候会出现提示信息如下:
Store key in cache?(y/n)
每次都需要输入y或者n,如果是java或者python等调用cmd命令的时候,则会出现无法执行下去的情况,那么怎么办呢,可以使用管道符号来进行,譬如还是命令pscp,使用如下方法即可自动填入y:

echo y |pscp ......

后边的省略号是操作命令;
其他语言调用也可以正常运行下去了  

到此这篇关于CMD命令行管道命令使用介绍的文章就介绍到这了,更多相关CMD管道符内容请搜索小牛知识库以前的文章或继续浏览下面的相关文章希望大家以后多多支持小牛知识库!

 类似资料:
  • 本文向大家介绍cmd组合和管道命令的使用方法(命令组合),包括了cmd组合和管道命令的使用方法(命令组合)的使用技巧和注意事项,需要的朋友参考一下 1.& Usage:第一条命令 & 第二条命令 [& 第三条命令...] 用这种方法可以同时执行多条命令,而不管命令是否执行成功 Sample: C:/>dir z: & dir c:/Ex4rch The system cannot find the

  • 问题内容: 我想知道是否有一种方法可以在Go中运行一定的时间,然后在从通道接收到值后将其杀死。在似乎不支持命令管道。谢谢。 问题答案: 这是我的管道示例,通过OS Std Pipe归档一个调用文件b,您可以对其进行编辑并添加计时器以执行所需的操作。 文件b:

  • 本文向大家介绍Electron 调用命令行(cmd),包括了Electron 调用命令行(cmd)的使用技巧和注意事项,需要的朋友参考一下 因为最近的项目需求,需要在 Electron 客户端启动的时候启动 nginx 服务,所以研究了一下怎么在 Electron 调用 命令行。 因为 Electron 基于 Chromium 和 Node.js,可以直接使用 Node.js 的 API 和一些包

  • 我试图使用Java的类来执行包含管道的命令。例如: 然而,我得到了一个错误: 然后: 尽管该命令在命令行中运行得很好,但我无法让执行将其输出重定向到另一个的命令。 有没有办法做到这一点?

  • 哈,这是令人兴奋,不是吗?:) 仅几分钟内你会写你第一行代码 让我们把你介绍给你的第一个新朋友: 命令行 ! 以下步骤将显示你如何使用所有的黑客都使用的黑色窗口。它可能刚开始看上去有点吓人,但事实上它只是等待你的命令提示符。 注意 请注意,在本书中我们使用术语“目录”和“文件夹”完全可以互换,它们指的是同一个东西。 什幺是命令行? 这个窗口通常被称为 命令行 或 命令行界面,是一个基于文本的用来查

  • 全局配置 你可以获得命令行帮助通过pyspider --help和pyspider all --help来获得帮助。 全局的选项适用于所有的子命令 ``` Usage: pyspider [OPTIONS] COMMAND [ARGS]... A powerful spider system in python. Options: -c, --config FILENAME