<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 神奇的xargs命令 ## xargs命令:將stdin轉換成傳入其它命令的參數 `xargs`命令的作用在于給別的命令傳遞參數,其一般配合管道符`|`來使用,把前一命令的stdout作為自己的stdin,再轉換成`command line`形式的參數傳給其它命令。 ### xargs命令的語法 其一般出現的形式如下: ``` OtherCommand [options] | xargs [options] [TargetCommand [options]] ``` 如: ``` find /tmp -name "*.log" -type f -print | xargs /bin/rm -f ``` 上面這是`xargs`命令的常用場景,配合`find`命令,找到`/tmp`目錄下所有日志文件并予以刪除。 ### xargs命令的意義 - 雖然管道能把別的命令的stdout作為下個命令的stdin傳入,但畢竟并非所有的命令都接受stdin的,如`ls`;比較常見接受stdin的命令有`cat`、`less`;而`xargs`命令能轉化stdin的命令正好彌補了這些不接受stdin的命令的不足。 - 對于大數據量的操作來說,如上面的例子,一次性刪除大量文件,若直接使用`rm -f /tmp/*.log`,很可能會報錯`/bin/rm Argument list too long`,而如果我們用上`xargs`命令,`xargs`會幫我們把待刪的文件分批交給`rm`命令來執行。 - 某些命令針對`xargs`調用的方式進行了優化,達到更進一步的效果,如: ```bash # ls | xargs ls file1 file2 file3 dir1: file4 dir2: file5 file6 file7 ``` ### xargs命令的工作原理 想了解`xargs`命令的工作原理,其實很簡單;`xargs`命令在不指定目標命令時,其默認目標命令實際上是`echo`: ``` # ls ./ | xargs echo file1 file2 file3 # ls ./ | xargs file1 file2 file3 # ls ./ file1 file2 file3 ``` 從以上命令的執行結果我們可以看到,`xargs`命令實際上就是**將所有空格、制表符和分行符都替換為空格并壓縮到一行上顯示,這一整行將作為一個字符串傳入到目標命令中**。 以下兩個命令實際上是等價的: ```bash # ls ./ | xargs echo file1 file2 file3 # echo 'file1 file2 file3' file1 file2 file3 ``` 明白了`xargs`命令的工作原理,那么其實它所支持的options也很好理解,實際上就是如何將stdin傳來的結果轉化成不同的字符串,如處理分隔符的問題、轉化成多個字符串分批執行的問題。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看