Linux中exec與xargs的區別

2021-09-10 18:22:20 字數 338 閱讀 3888

在linux中exec與xargs都是將前乙個命令的結果作為他的標準輸入,但二者還是有區別的。

要結合{};來用, {}表示前面查詢的結果;結束符,這是固定的寫法

引數是乙個乙個傳遞的,傳遞乙個引數執行一次

檔名有空格等特殊字元也能處理

傳遞給exce命令的長度有限制,在某些系統上-exec引數只能呼叫很少的shell命令

要結合 |來操作,在批處理檔案時,因緩衝(多執行緒),所以速度要快些

一次將引數傳給命令,可以使用-n控制引數個數

處理特殊檔名需要採用-0來避免特殊字元(xargs -0 )

xargs可以保證不會因為引數過多而結束程序

Linux命令備忘例項(9) 引數代換xargs

管道命令可以將stdout重定向到stdin,但是對於只能接受命令行引數的形式接收資料的命令,無法通過stdin接收資料。此時就需要將stdin轉換為後續命令的命令列引數。xargs就是實現這個功能的命令 擅長將stdin的資料轉換為命令列引數,也可以將單行或多行文字輸入轉換為其他格式。一般編寫sh...

Linux中exec族函式詳解

1 exec函式說明 fork函式是用於建立乙個子程序,該子程序幾乎是父程序的副本,而有時我們希望子程序去執行另外的程式,exec函式族就提供了乙個在程序中啟動另乙個程式執行的方法。它可以根據指定的檔名或目錄名找到可執行檔案,並用它來取代原呼叫程序的資料段 段和堆疊段,在執行完之後,原呼叫程序的內容...

Linux中的exec函式族

fork 建立子程序後執行的是和父程序相同的程式 但有可能執行不同的 分支 子程序往往要呼叫一種 exec 函式以執行另乙個程式。當程序呼叫一種 exec 函式時,該程序的使用者空間 和資料完全被新程式替換,從新程式的啟動例程開始執行。呼叫 exec 並不建立新程序,所以呼叫 exec 前後該程序的...