我需要在groovy中使用ls -l
unix命令显示文件的名称,大小,日期。
我们如何在groovy中运行ls -l
来查看信息?
提前感谢。
答案 0 :(得分:7)
"ls -l".execute().text
应该这样做
答案 1 :(得分:5)
def list = 'ls -l'.execute().text
list.eachLine{
// code goes here
}
答案 2 :(得分:4)
如果您不介意将自己限制在Java所知的文件属性中,您可以使用File类的方法以更便携,灵活,安全和有效的方式执行此操作。
File dir = new File(".")
dir.eachFile { f ->
println "${f} ${f.size()} ${new Date(f.lastModified())}"
}
检查GroovyDocs和JavaDocs for File,查看筛选文件的所有方法,以及您有权访问的所有属性。
当然,您可以在该块中包含任何代码,替换println。
在Perl世界中,我们了解到,当本机Perl是一个选项时,通常要避免调用shell命令。我认为,在Groovy中更是如此。当然,你可能有一个特殊的要求,你需要确切的输出'ls -l'会产生。