2016-04-18 40 views
0

我用的是f.write(row)命令在服務器上寫一個巨大的文件output.txt的(約10GB)thorugh一個python腳本,但因爲這個過程太長,我決定中斷使用刪除未完成的文件

kill -9 pid程序

的問題是,這個空間仍然使用在服務器上,當我用命令檢查

df -h

我哪有空這個緩衝器T佔用的磁盤帽子試圖寫入文件?

文件output.txt中是空(0字節)時,我殺了劇本,但我仍然反正用

rm output.txt

但磁盤空間不會成爲自由刪除,我仍然有10 GB浪費..

+0

您可以使用垃圾收集器釋放內存。請參閱此鏈接:docs.python.org/2/library/gc.html – AceLearn

+0

它可能位於/ tmp /文件夾中,您可以嘗試重新啓動機器 – lapinkoira

回答

0

如果您刪除某個進程中打開的文件,它將被標記爲已刪除,但內容仍保留在磁盤上,以便所有進程仍然可以讀取它。一旦所有進程都關閉相應的描述符(或簡單地完成),空間將被回收。

0

檢查proccesses,看它是否仍然在運行,如果是的,剛拿到終端上的ID和賴特:

kill proccess_id