java操作linux命令
java命令操作linux指令参考import java.io.*;public class Test{public static void main(String[] args) throws Exception{try{Process process=Runtime.getRuntime().exec("ls ./");InputStreamReader reader = new InputS
·
java命令操作linux指令
参考
import java.io.*;
public class Test{
public static void main(String[] args) throws Exception{
try{
Process process=Runtime.getRuntime().exec("ls ./");
InputStreamReader reader = new InputStreamReader(process.getInputStream());
LineNumberReader line = new LineNumberReader(reader);
String str;
while((str=line.readLine())!=null){
System.out.println(str);
}
}catch (Exception e){
e.printStackTrace();
}
System.out.println("done !!!");
}
}
管道符
java操作linux移动命令mv
参考以上Process process=Runtime.getRuntime().exec(“ls ./”);
java通过Process 操作linux命令,
1.由于项目放docker容器中,测试发现没有此目录,
解决
'生成文件与移动文件的目录,配置宿主机与docker容器的映射路径,
2.又发现没有权限,由于宿主机的用户与容器内的用户不一致所致。
解决
1,查看宿主机的file文件用户组与uid,命令:id 用户名,
2,查看docker映射后的文件的用户组与uid,(id dcos)
保证容器内外的uid一致,即,把宿主机的id设置和和容器内一致,
chmod -R 1000 file
注:1000是容器内的uid
最后并重启容器,
docker start dcos
附docker进入容器
docker ps
docker exec -it -u root abc12383hsuhd sh
注意,上线后版本问题引起不兼容,修改用户后重启容器后,容器内用户改变,导致写入失败,需要重新设置宿主机用户id
更多推荐
已为社区贡献1条内容
所有评论(0)