Groovy 内から unzip シェル コマンドを実行しようとしています。
コマンドを実行しています
"unzip ~/Documents/myFile.txt.zip -d ~/Documents/".execute()
しかし、それは機能していません。正確なコマンドを端末にコピーすると、機能します。Groovyからこれを行うにはどうすればよいですか?
~
Groovy に関する限りはありません。実際のパスを使用します。
groovy:000> p = "ls -CF /Users/Dave".execute()
===> java.lang.UNIXProcess@2603826d
groovy:000> p.waitFor()
===> 0
groovy:000> p.in.text
===> Desktop/ Movies/ bin/
Documents/ Music/ node_modules/
Downloads/ Pictures/
Dropbox/ Public/
Library/ ScreenshotOnFail/
いつでも使用できますSystem.getProperty("user.home")
。たとえば、
p = "ls -CF ${System.getProperty('user.home')}".execute()