我想在不解析 ls -l 的情况下获得 linux 文件权限。由于我将使用 RootTools,我看到它有一个Permissions类,但是我应该如何将 File 的权限数据获取到该对象中?
问问题
410 次
2 回答
1
如果您不能修改源使用反射:
private Permissions RootToolsInternalMethods_getPermissions(String line)
{
try
{
RootTools rootTools = new RootTools();
Method method = rootTools.getClass().getDeclaredMethod("getInternals");
method.setAccessible(true);
RootToolsInternalMethods rootToolsInternalMethods = (RootToolsInternalMethods)method.invoke(rootTools);
return rootToolsInternalMethods.getPermissions(line);
}
catch (Exception ignore) {}
return null;
}
于 2016-11-01T15:21:14.040 回答
0
RootToolsInternalMethods 有 getPermissions(String) 方法,但它们只能在 RootTools 类中访问
来自 RootTools 源
private static final RootToolsInternalMethods getInternals() {
if (rim == null) {
RootToolsInternalMethods.getInstance();
return rim;
} else {
return rim;
}
}
好像我必须修改 RootTools 源并从 ls -l 输出获取权限
getInternals().getPermissions("ls -l output line");
于 2013-02-17T16:32:54.150 回答