簡體   English   中英

如何分配大於0字節的文件而不在POSIX環境中寫入內容?

[英]How do I allocate a file larger than 0 bytes without writing content in a POSIX environment?

我需要能夠快速創建大量文件,隨機大小為1k-64k,平均為32k。 我發現的一種方法是使用unix命令dd將字節從/ dev / urandom復制到新文件中。 但是,我試圖通過僅創建到未分配空間的文件鏈接來節省時間,而不將隨機字節寫入磁盤。

在類似Unix的環境中是否可行?如果可以,我將如何解決?

如果沒有,可以用一個小的C程序來完成嗎?

mkfiledd或任意數量的其他(不一定是POSIX標准)實用程序。 我要指出,從/dev/zero而不是/dev/urandom復制可以明顯更快,尤其是在CPU速度較慢的舊系統上。

如果您想用C或C ++代碼做某事,則有truncate()ftruncate() 也許大多數Perl / Python /任何綁定都以某種方式公開了system / libc調用。

因此,您想在cwd中將mkfile {size}[b|k|m|g] filename命名為mkfile {size}[b|k|m|g] filename嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM