echo > 和 echo >>的區別

在操做系統中,咱們常常會遇到命令操做符>(輸出重定向)和>>(輸出追加劇定向)。html

不少新手小夥伴在接觸的時候,老是困惑輸出重定向(>)和輸出追加劇定向(>>)的區別,下面小編就和你們一塊兒分享,>和>>的區別。linux

百度經驗:jingyan.baidu.comwindows

工具/原料

 
  • windows或者linux

百度經驗:jingyan.baidu.com工具

方法/步驟

 
  1. 這裏小編就以windows爲例(unix/linux也是同樣)spa

    echo的做用:操作系統

    echo的做用其實很簡單,就是打印字符串到輸出文件流。3d

    例如:unix

    echo Hello,Binnhtm

    如圖,執行以後,終端會打印出echo的參數,即Hello,Binnblog

  2. >操做符輸出重定向的做用:

    echo + 輸出重定向的用法:

    echo 參數 > 輸出文件

    echo Hello,Binn > tmp.txt

    這句話的意思便是:輸出Hello,Binn字符串到一個位置,若是tmp.txt存在,咱們即【清空其內容,更新爲Hello,Binn】,不存在,建立之

    這個過程,echo沒有像以前那樣向終端打印參數,爲何?

    緣由是由於,>輸出重定向把echo的參數輸出到某個文件(而不是輸出到終端,這就是輸出重定向)。

  3. 此時咱們看看tmp.txt的內容。

    type tmp.txt

    (linux/unix請用cat)

    這是否是咱們剛剛echo要輸出的內容呢?沒錯,就是這個。

  4. 操做符>>輸出追加劇定向和>輸出重定向功能相似。

    相同的地方是:若是重定向的文件不存在,建立之

    惟一不一樣的地方是:【若是重定向的文件存在,追加之(>符是清空後新增內容,>>是在文件末尾追加字符串)】

    咱們這樣作個試驗,更容易理解。

     

    6步,仔細觀察,很容易就能理解。

     

    一、輸出重定向a到tmp.txt:

      echo Hello,A > tmp.txt

    二、查看tmp.txt的內容(此時的內容是A)

      type tmp.txt  

     

    三、輸出重定向b到tmp.txt

      echo Hello,B > tmp.txt

    四、查看tmp.txt的內容(此時能夠看到,>已經把A替換成B了)

      type tmp.txt

     

    五、輸出追加劇定向c到tmp.txt

      echo Hello,C >> tmp.txt

    六、查看tmp.txt的內容(此時能夠看到,原來的字符串B並無被替換,而是在B的下一行新增字符串C,即追加操做)

      type tmp.txt

     

    很少說,一步一步來。

  5. 第三步和第四步:

    三、輸出重定向b到tmp.txt

      echo Hello,B > tmp.txt

    四、查看tmp.txt的內容(此時能夠看到,>已經把A替換成B了)

      type tmp.txt

  6. 第五步和第六步:

    五、輸出追加劇定向c到tmp.txt

      echo Hello,C >> tmp.txt

    六、查看tmp.txt的內容(此時能夠看到,原來的字符串B並無被替換,而是在B的下一行新增字符串C,即追加操做)

      type tmp.txt

     

    作到這裏相信小夥伴已經明白重定向和追加劇定向的區別。

    END
相關文章
相關標籤/搜索