我需要使用ls -l
unix命令在groovy中显示文件的名称、大小和日期。
我们如何在groovy中运行ls -l
以查看信息?
提前致谢。
"ls -l".execute().text
应该这样做
def list = 'ls -l'.execute().text
list.eachLine{
// code goes here
}
如果您不介意限制自己只使用Java知道的文件属性,您可以使用File类的方法以更加便携、灵活、安全和高效的方式完成此操作。
File dir = new File(".")
dir.eachFile { f ->
println "${f} ${f.size()} ${new Date(f.lastModified())}"
}
请查看File的GroovyDocs和JavaDocs,了解过滤文件的所有方法以及可以访问的所有属性。
当然,在该代码块中,您可以使用任何代码替换println。
在Perl世界中,我们学习到尽可能避免调用shell命令,而是优先选择本地Perl。我认为在Groovy中更加如此。当然,您可能有特殊要求,需要与“ls -l”生成的确切输出相同。