Мне нужно отображать имя, размер, дату файлов с помощью команды ls -l
unix в groovy.'ls -l' in groovy
Как мы можем запустить ls -l
в groovy для просмотра информации?
благодарит заранее.
Мне нужно отображать имя, размер, дату файлов с помощью команды ls -l
unix в groovy.'ls -l' in groovy
Как мы можем запустить ls -l
в groovy для просмотра информации?
благодарит заранее.
"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())}"
}
Проверьте оба GroovyDocs и JavaDocs для файла, чтобы увидеть все способы, которыми Вы можете фильтровать файлы, и все свойства, которые имеют доступ.
Конечно, у вас может быть любой код в этом блоке, заменив println.
В мире Perl мы узнали, что обычно нужно избегать вызова команд оболочки, когда собственный параметр Perl является опцией. Я считаю, что это еще более верно в Groovy. Конечно, у вас может быть специальное требование, в котором вам понадобится точный вывод 'ls -l'.
Да, мое требование - производить точный выход. Но я хотел бы рассмотреть ваш комментарий. мое требование может измениться сейчас. спасибо за комментарий – Srinath
Для любого профессионального развития платформ это решение должно быть в значительной степени благоприятным, поскольку оно независимо от платформы, быстрее и надежнее. Для ваших собственных скриптов я бы сказал, что с этим все еще легче справиться, но иногда при написании сценариев вы просто хотите получить материал. –