2013-06-25 50 views
0

我正在嘗試完成一個任務,將所有文件從一個目錄複製到另一個位置。在shell腳本中只複製完成的文件

這將是一個正在進行的腳本,因此我將每5秒複製一次文件,然後在複製文件後刪除這些文件。

,唯一的缺點是,我需要確保該文件已完成之前,我把它複製(即不被修改再)

反正是有,以找出是否正在使用的文件是/是開放的?

感謝您的幫助

+0

作爲獎勵'''fuser'''是POSIX的一部分,因此您可以在OS/X,BSD,Linux和Solaris上運行。 HP-UX,AIX ... :-) 成爲明星併成爲(POSIX-ly)跨平臺! –

回答

2

看看在fuser命令。它會告訴你打開文件的進程。

+0

完美,我可以使用它,它的返回代碼:)非常感謝你!由於某種原因, – ola

+0

...這不起作用。我正在不斷寫信給文件,當我將它定位時,我得到1的返回值不是0 ....爲什麼會出現這種情況? 'lsof'也給我提出了同樣的問題 – ola