溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Linux下有幾種文件

發(fā)布時間:2021-10-27 11:39:39 來源:億速云 閱讀:142 作者:小新 欄目:系統(tǒng)運維

小編給大家分享一下Linux下有幾種文件,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

我們都知道Linux下一切皆文件,主要有:

  • - 普通文件

  • d 目錄

  • l 符號鏈接

  • s 套接字

  • b 塊設(shè)備

  • c 字符設(shè)備

  • p 管道

這么幾種文件。

Linux下有幾種文件

這里的前綴字符可以通過ls命令觀察到:

$ ls -l test.log -rw-r--r-- 1 root root 33 Nov 17 17:03 test.log

它的結(jié)果最前面是-,因此它是普通文件。

$ ls -al /dev/null crw-rw-rw- 1 root root 1, 3 Sep 11 20:33 /dev/null

它的結(jié)果最前面是c,因此它是字符設(shè)備。文件簡單介紹幾種字符設(shè)備文件,它能在我們功能測試的時候提供很好的幫助。

/dev/null

/dev/null 可無限接收數(shù)據(jù),你可以認(rèn)為是一個黑洞,因此如果我們需要丟棄某些終端輸出,可以重定向到這里:

$ echo "shouwangxiansheng" > /dev/null

所以如果你有不需要的數(shù)據(jù)可以盡情的往這里寫。

/dev/full

它在讀取時會讀取到連續(xù)的NUL(零值)字節(jié)流,而在寫入的時候,會返回磁盤空間已滿的結(jié)果,后者在測試你的程序的時候會有幫助,即測試磁盤滿的場景:

$ echo "bianchengzhuji" > /dev/full -bash: echo: write error: No space left on device

/dev/zero

和/dev/null類似,向其中寫入時會丟棄所有數(shù)據(jù),但是讀取時,會產(chǎn)生NUL(零值)字節(jié)流。

$ cat /dev/zero |od -x  0000000 0000 0000 0000 0000 0000 0000 0000 0000

/dev/random

/dev/random可以提供隨機數(shù)據(jù)流,它保證數(shù)據(jù)的隨機性,但是讀取時會造成等待,例如:

$ cat /dev/random | od -x 0000000 2b07 daac 42f4 e1fd fb62 2098 870e e0af 0000020 3022 2099 e5da 4e1c d6db 548b a979 1217 0000040 3777 bb6a 957d 1279 ab29 e8a4 6a36 ecca 0000060 39ec 2285 126c 30ea ea67 1526 5e4a 2dd9

稍過會才會出現(xiàn)數(shù)據(jù),為了便于查看,我們利用od命令查看其十六進制內(nèi)容。

/dev/urandom

從名字就可以看出來,是用來產(chǎn)生隨機數(shù)據(jù)的。它的產(chǎn)生速度很快,但是數(shù)據(jù)的隨機性不如/dev/random

cat /dev/urandom | od -x 0547560 f43e 696a 8936 2b27 36c8 4446 2802 1d47 0547600 b8af 249d aae9 edbf 8971 b1d1 0c73 3e2d 0547620 237b 9a81 6348 cb2a 1972 4486 028a 3573 0547640 1690 c388 64e1 aec1 d5f4 1964 bbb9 192f 0547660 f242 7194 51ba 62a3 fc13 ff53 fb50 e3d8 0547700 ef32 3658 b335 75ee 62de 4096 6468 c979 0547720 01b9 c233 878d 12fc 5cfa 5691 89e1 e1f9

/dev/pts

/dev/pts是遠程登陸(telnet,ssh等)后創(chuàng)建的控制臺設(shè)備文件所在的目錄。有什么用呢?舉個例子,你打開一個終端,獲取到當(dāng)前的pts:

$ tty /dev/pts/0

然后你又打開一個,輸入:

$ echo "hahahaha">/dev/pts/0

你就會發(fā)現(xiàn)內(nèi)容被打印到前面一個終端了。通常我們運行一個程序,其printf的打印都會打印在當(dāng)前終端。

以上是“Linux下有幾種文件”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI