簡體   English   中英

將兩個文件合並為一個,但不讀取其內容

[英]Concatenate two files into one without read their content

我有兩個檔案

-rw-r--r-- 1 root root 5 Jun 28 11:34 file_a
-rw-r--r-- 1 root root 5 Jun 28 11:34 file_b

我想將這兩個文件合並為一個。

cat file_a file_b > file_c 

以上不是我想要的。 因為如果file_a,b太大,可能會花費太多時間

應該有更有效的方法。 Linux上的文件存儲在我的離散物理區域中。 應該有一些數據結構(在這里我們稱為指針)記錄這些物理區域。

通過修改指針,使file_a的結束指針成為file_b的開始指針,我們應該能夠將它們快速地連接成兩個。

那么問題是如何在python中做到這一點?

copy_file_range(2)可以完成這項工作。 但我認為它尚未在python中公開。 較舊的sendfile(2)似乎可以通過os.sendfile在python中使用。 您必須調用它兩次,每次分別使用in fds表示file_a和file_b,而out fd表示file_c

暫無
暫無

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

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