0
私はscalaでsudoとしてプロセスを実行しようとしています。私はこのコードを書いたScalaでsudoとしてプロセスを実行しています
val l : Seq[String] = Seq("echo", "SecretXYZ!", "|", "sudo", "-S", "-u", "web", "spark-submit", "--class",
"com.abhi.Foo", "--master", "yarn-cluster", "Foo-assembly-1.0.jar", DateTimeFormat.forPattern(pattern).print(date), ">",
"fn_output.txt", "2>", "fn_error.txt")
l.!
println("completed...")
しかし、私はこれを実行すると、プロセスを実行しません。ルカシュが指摘したように、それだけで
SecretXYZ! | sudo -S -u web spark-submit --class com.abhi.Foo --master yarn-cluster Foo-assembly-1.0.jar 2015-03-19 > fn_output.txt 2> fn_error.txt
completed...
おそらく '!'は物をシェルに渡さないので、 "|" (と ">"と "> 2")は 'echo'の引数です。 –
と私はこれをどのように変更しますか? –
'#|' '#>'演算子を使います。 http://www.scala-lang.org/api/rc2/scala/sys/process/package.htmlを参照してください。 –