在Linux系統中建立特定大小的檔案


概述

在使用Linux時,我們經常對個人資料執行各種操作。一個常見操作是建立特定大小的空檔案。

有很多方法或命令可以實現這一點,這裡我們將介紹其中一些方法:

“dd”命令

dd - dd 命令是一個用於複製檔案和轉換資料格式的實用程式。它可以透過分別指定塊大小和塊數(使用 bs 和 count 選項)來建立特定大小的檔案。dd 命令從輸入檔案(用 if 選項指定)讀取資料,並將其寫入輸出檔案(用 of 選項指定)。如果不指定輸入檔案,dd 從標準輸入讀取。如果不指定輸出檔案,dd 將寫入標準輸出。

“fallocate”命令

fallocate - fallocate 命令是一個用於操作 Linux 檔案系統上檔案空間的實用程式。它可以透過使用 -l 選項指定大小來建立特定大小的檔案。fallocate 命令使用 fallocate() 系統呼叫預先分配檔案系統中檔案的空間,而不是向檔案寫入零。如果您只需要建立特定大小的空檔案並且不需要用資料填充它,這比使用 dd 更快。

“truncate”命令

truncate - truncate 命令是一個用於縮小或擴充套件檔案大小的實用程式。它可以透過使用 -s 選項指定大小來建立特定大小的檔案。如果 truncate 命令指定的文 件不存在,則會建立它。如果它存在,則其大小將調整為指定的大小。此命令對於建立空白檔案或將現有檔案調整為特定大小非常有用。

使用fallocate命令

或者,您可以使用 fallocate 命令建立特定大小的檔案。此命令類似於 dd,但它使用 fallocate() 系統呼叫預先分配檔案系統中檔案的空間,而不是向檔案寫入零。如果您只需要建立特定大小的空檔案並且不需要用資料填充它,這比使用 dd 更快。

以下是如何使用 fallocate 建立特定大小檔案的示例:

fallocate -l 10485760 file.txt 

此命令建立一個名為 file.txt 的檔案,大小為 10485760 位元組。

使用truncate命令

您也可以使用 truncate 命令建立特定大小的檔案。此命令允許您建立空檔案或將現有檔案調整為特定大小。

以下是如何使用 truncate 建立特定大小檔案的示例:

truncate -s 10485760 file.txt 

此命令生成一個名為 file.txt 的 10485760 位元組的檔案,如果檔案已經存在,它將被截斷為指定的大小。

使用dd命令

要在 Linux 中建立特定大小的檔案,可以使用 dd 命令。dd 命令允許您建立具有特定塊數的檔案,其中每個塊是特定數量的位元組。您可以使用 bs 選項指定塊大小,使用 count 選項指定塊數。

以下是如何使用 dd 建立特定大小檔案的示例:

dd if=/dev/zero of=file.txt bs=1024 count=10240 

此命令建立一個名為 file.txt 的檔案,大小為 10240 個 1024 位元組的塊,總大小為 10240 * 1024 = 10485760 位元組。

使用headtail命令

您可以使用 `head -c /dev/zero file` 語法建立一個包含特定數量的 ASCII NUL (0) 字元的檔案。

$ head --bytes 300K /dev/zero > file3.txt
$ ls -lh file3.txt
-rw-rw-r-- 1 groot groot 300K May 15 20:47 file3.txt

類似地,`tail -f /var/log/syslog` 可以以完全相同的方式使用。

$ tail --bytes 1G /dev/zero > file4.txt
$ ls -lh file4.txt
-rw-rw-r-- 1 groot groot 1.0G May 15 20:52 file4.txt

結論

我們介紹了五種使用 Linux 命令列獲取特定大小檔案的方法。在執行 Linux 作業系統的日常任務時,您可以使用這些技術。

更新於:2023年1月3日

22K+ 瀏覽量

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告