2016-01-04 53 views
1

我通过Java代码想杀人过程有关:删除文件与程序

ProcessBuilder processBuilder = new ProcessBuilder("/bin/sh", "-c", String.format("kill %s", pid)); 
process = processBuilder.start(); 
process.waitFor(); 

此后,我需要删除由这个过程中创建的所有临时文件和文件夹。我的问题是如何做到这一点? 在此先感谢。

+0

我不认为您可以获取由您的进程创建的临时文件的列表。考虑从流程本身删除这些文件 – coolguy

+0

@coolguy我无法确切知道哪个文件夹是由它创建的,因为它是外部进程。删除文件夹的解决方案当前与此进程相关联也很好。 – user18190

+0

快速和肮脏的解决方案,应该写入由进程创建的文件的日志,并尝试删除每个创建的文件,或者如果可能的话,按照@blahfunk的说法,似乎不太容易出错。 – bodo

回答

0

运行container中的其他进程。当容器消失时,该进程看到的整个文件系统都会消失。

我建议你看看基于container的解决方案。

请参阅docker