Unix Linux中的 dev fd機制

2021-07-25 12:52:04 字數 987 閱讀 5484

**

比較新的unix/linux系統都提供名為/dev/fd的目錄,其中有檔案0、1、2等檔案,開啟這些檔案,相當於複製這些檔案描述符

例如:fd=open("/dev/fd/0",mode);

等價於fd=dup(0);

檔案描述符fd和0將共享乙個檔案表記錄項。

我們再來做一些試驗:

在debian下執行以下命令

#cd /dev/fd

#ls -l

總用量 0

lrwx------  1 root root 64 2005-09-12 22:20 0 -> /dev/pts/0

lrwx------  1 root root 64 2005-09-12 22:20 1 -> /dev/pts/0

lrwx------  1 root root 64 2005-09-12 22:20 2 -> /dev/pts/0

lrwx------  1 root root 64 2005-09-12 22:20 255 -> /dev/pts/0

我們看到在fd目錄下,有四個檔案0、1、2、255,它們都是指向/dev/pts/0的符號鏈結

在有一些系統中,提供了/dev/stdin、/dev/stdout、/dev/stderr,它們分別等效於/dev/fd/0、/dev/fd/1、/dev/fd/2

UNIX linux中的引號

unix中的引號分為三種 單引號,雙引號,反引號 單引號 用單引號括起來的字元作為普通字元,即使是特殊字元也不例外.雙引號 除了 和 這幾個字元仍是特殊字元保持其特殊效能以外,其他的字元全部作為普通字元.其中 是用其後指定的變數的值代替此變數和 是轉移字元,指出對其後的字元不做特殊處理.反引號 反引...

Unix Linux中Cron的用法

cron是unix或者linux下用來定時任務的命令,大致的用法如下 1 服務的啟動和關閉 sbin service crond start 啟動服務 sbin service crond stop 關閉服務 sbin service crond restart 重啟服務 sbin service ...

詳解Unix Linux中Shell指令碼的輸入輸出

shell的i o語法比較複雜,難以理解,更難以正確使用。shell的輸入輸出語法有兩個難點 重定向和檔案描述符。我以前對shell指令碼輸入 輸出的理解也有錯誤。最近重新整理思路,決定寫一篇文章來總結i o重定向。一 先介紹幾個基本概念 1 檔案 file 在unix linux中,檔案型別有七種...