需求:
通过web系统一个按钮执行删除linux系统上的一个文件夹.我的写法是这样的Runtime runtime = Runtime.getRuntime();
Process proc = runtime.exec("sh -c rm -f -r 目录路径");
proc.waitFor();
proc.destroy();请问这样写会不会有什么问题?
因为我是一个删除文件的功能,假如因为某些原因(文件正在被访问)
该语句执行后失败,这个进程是不是不会被销毁掉?
因为是web程序,还需要考虑到多线程请高手解决看一下,谢谢了
通过web系统一个按钮执行删除linux系统上的一个文件夹.我的写法是这样的Runtime runtime = Runtime.getRuntime();
Process proc = runtime.exec("sh -c rm -f -r 目录路径");
proc.waitFor();
proc.destroy();请问这样写会不会有什么问题?
因为我是一个删除文件的功能,假如因为某些原因(文件正在被访问)
该语句执行后失败,这个进程是不是不会被销毁掉?
因为是web程序,还需要考虑到多线程请高手解决看一下,谢谢了
改成了:rm -f "目录"
去测试了一下,返回成功的,但是实际上linux上边的文件并没有删除...但是我直接登录到linux上边,粘贴这一条命令,删除成功了...很奇怪...请问一下是什么原因?这个是不是和用户的权限有关?
文件的权限都是可读可写的