您好,登錄后才能下訂單哦!
本文小編為大家詳細介紹“linux中cwd指的是什么”,內容詳細,步驟清晰,細節處理妥當,希望這篇“linux中cwd指的是什么”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
在linux中,cwd指的是某個進程運行時所在的目錄;cwd是“current working directory”的縮寫,即當前工作目錄,cwd不是系統自帶的命令,屬于系統的屬性,可以在“/proc/{id}”目錄下看到cwd。
本教程操作環境:linux7.3系統、Dell G3電腦。
Linux中的 pwd, $PWD 與 cwd
一句話解釋: 都指某個進程運行時所在的 目錄.
$PWD 是個系統變量
pwd 是linux 自帶的命令. 全稱: pathname of the current working directory.
cwd: 不是系統自帶的命令, 但是屬于 系統的屬性 . 全稱: current working directory . 不但在 /proc/{id} 這個目錄下可以看到cwd, 在很多其他的編程語言中也可以看到( 例如grunt )
cwd指的是current work directory,即當前工作目錄。
擴展知識
FD 名稱(cwd,memory…\d[u|r|w])
當執行一個進程的時候,會有一個cwd的文件描述符。
cwd指的是current work directory,即當前工作目錄。
為什么會有指定當前目錄的FD呢?
是因為在Linux系統中,不管是目錄還是文件都是以文件的方式存在的。所以當我們執行一個進程的時候,需要指定在哪個目錄中執行,系統會去打開指定的執行目錄,那么這個過程也就是一個打開系統文件的過程,即會創建FD。所以可以理解為任何一個進程都會有cwd的FD
當執行一個進程的時候,會有一個txt的文件描述符。
txt可以理解為是程序代碼,如應用程序的二進制庫或者是共享庫等。
為什么會有txt的FD呢?
既然是執行進程,那么必須有指定執行內容的代碼文件。執行的時候需要讀取文件內容,那么打開代碼文件也必然會創建FD。所以可以理解為任何一個進程都會有txt的FD
還有一些特殊的FD:
rtd:根目錄
mem:內存映射文件
mmap:內存映射設備
還有一些FD是數值開頭的,這些表示的是這個進程執行時需要打開的一些文件描述符,這個數值也可以理解為是打開該文件時返回的一個整數。當初始化打開每一個進程的時候,都會默認有三個數值開頭的FD,即0,1,2。也可以當做是內置FD,因為他們默認代表了特殊的含義
0:stdout,標準輸出
1:stdin,標準輸入
2:stder,錯誤輸出
所以當應用程序內部打開文件的時候,數值都是從3開始的,有效范圍是0-OPEN_MAX
在數值的后面還會加一個FD讀寫權限的標識:
u:讀寫
r:只讀
w:只寫
讀到這里,這篇“linux中cwd指的是什么”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。