溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在CMD命令行中使用管道命令

發布時間:2021-03-20 15:52:52 來源:億速云 閱讀:792 作者:Leah 欄目:開發技術

本篇文章為大家展示了怎么在CMD命令行中使用管道命令,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

一、什么是管道命令

  管道命令能夠將一個命令的執行結果經過篩選,只保留我們需要的信息。
  如 dir 命令會顯示目錄下所有文件夾和文件,可以使用管道命令| findstr "" 將dir的結果進行篩選,只保留需要的信息

怎么在CMD命令行中使用管道命令

| 命令管道符

格式:第一條命令 | 第二條命令 [| 第三條命令...]
將第一條命令的結果作為第二條命令的參數來使用,記得在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命令行中使用管道命令,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

cmd
AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女