博客專欄

EEPW首頁 > 博客 > Linux -- system、.(source)、exec的區(qū)別

Linux -- system、.(source)、exec的區(qū)別

發(fā)布人:電子禪石 時間:2020-02-13 來源:工程師 發(fā)布文章
一、shell 中的 exec 兩種用法:
1、exec 命令:
    代替shell程序,exec命令在執(zhí)行時會把當前的shell process關閉,然后換到后面的命令繼續(xù)執(zhí)行。比如 exec ls,終端執(zhí)行完ls命令后退出。
2、exec 文件重定向:
    可以使用命令 exec ls >> ls.txt 后,可以在當前路徑下找到 ls.txt,并且ls.txt文件中的內容即為當前目錄下的文件的名稱。
————————————————

二、exec與.(source)的異同:
1、exec和.(source)都可以在終端來執(zhí)行程序或者腳本
2、exec執(zhí)行時候會關閉當前shell進程,并且fork一個相同pid的shell進程來執(zhí)行,系統(tǒng)調用新的exec的process來替代原來的進程執(zhí)行。沒有新的進程創(chuàng)建,原來進程的代碼段、數(shù)據(jù)段、堆棧都被新的process所代替。
3、.(source)執(zhí)行的時候是當前shell環(huán)境下執(zhí)行,執(zhí)行完成后把狀態(tài)返回給當前的shell。

三,system與exec的區(qū)別
1、system()和exec()都可以執(zhí)行進程外的命令,system是在原進程上開辟了一個新的進程,但是exec是用新進程(命令)覆蓋了原有的進程。
2、system()和exec()都有能產(chǎn)生返回值,system的返回值并不影響原有進程,但是exec的返回值影響了原進程。

其中一個應用就是 操作gpio 時候可以使用system 函數(shù)。

99.PNG————————————————

原文鏈接:https://blog.csdn.net/zhemingbuhao/article/details/88032769


*博客內容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權請聯(lián)系工作人員刪除。

調光開關相關文章:調光開關原理


關鍵詞:

相關推薦

技術專區(qū)

關閉