spawn類參數command詳解

 

    咱們主要來看spawn類它的構造方法參數主要有command,從字面上就是指spawn類的子程序用來執行的子程序,也就是系統所可以執行的相應的命令,對於command這個參數,咱們是以字符串的方式給出它所須要運行的子命令,這裏包括任何系統可執行的命令,也就是咱們在某個系統下來使用spawn類的時候,這個系統帶有這個命令,或者說可執行這條命令,那麼咱們就能夠將要執行的命令的字符串的形式,給command這個參數,而且這個命令是能夠帶參數的,並且參數能夠直接放入command,第三,若是咱們使用command來執行系統中的命令,它不可以直接支持管道,通配符,標誌輸入,輸出,錯誤重定向。spa

  下面咱們繼續看,若是使用command這個參數,首先咱們打開虛擬機,進入Python3交互的環境,導入pexpect庫,那麼咱們首先傳遞給他一個最簡單的命令,首先是列出當前路徑下的全部文件和目錄的命令,用「ls」這條命令,咱們要看到這條命令的執行結果,能夠調用spawn類的方法來查看,這樣咱們就能夠看到用ls所列出來,也就是當前目錄下全部的文件以及文件夾主要包括這些。3d

  在給command這個參數傳遞命令的時候,還能夠給這個命令帶上參數,好比將這裏面的「ls」命令進行修改一下,修改成帶有一個參數,以及它有列出的是哪一個目錄,而後咱們用剛纔的一樣的方法,來查看這個命令運行的結果。blog

  能夠看到它其實就是「ls - l/home/djx’」這條命令,可是它列出的目錄,仍然是和剛剛的目錄是相同的,而且採用的是列出詳細信息的形式,對於這個command參數,它雖然能夠接收一條命令或者是帶有參數的命令,可是咱們剛纔有講到,它是不支持管道等操做符的,那麼咱們下面來看一下,若是傳遞給他一個帶有管道符的這種命令的時候會出現什麼狀況?字符串

  如圖,輸入命令,咱們給它一個管道命令,表示咱們從開始的文件中顯示全部的內容,而且搜索這個字符串gree,而後咱們用一樣的方法來進行查看,能夠看到這個命令在執行的時候,出現了錯誤的提示,這個錯誤的提示也就是testgrep沒有那個文件或目錄,因此在這個地方,grep是把這個管道符當成是一個普通的字符,那麼也就是認爲testgrep做爲一個文件名出現的,那麼固然它不會找到這個文件而且列出其內容的,那麼這個gree也提示沒有那個文件或目錄,是由於管道符以及通配符等等在command當中是不可以直接支持和使用的,這就是咱們要介紹的做爲構造參數的第一個command它的使用方法。get

 

原文連接:http://www.maiziedu.com/wiki/library/parameter/虛擬機

相關文章
相關標籤/搜索