2015-07-22 4 views
1

Я запускаю это через java.Экран Linux cmd не работает?

String cmd = "screen -dmS test -X eval \'stuff \"stop \\015\"\'";  

try { 
    Runtime.getRuntime().exec(cmd); 
} catch (IOException e) { e.printStackTrace(); } 

И он печатает, как

screen -dmS test -X eval 'stuff "stop\015"' 

Однако на экране я пытаюсь запустить его, я вижу это:

-X: Missing ' quote. AND  -X: Missing " quote. 

enter image description here

Где цитата отсутствует? Если я запускаю эту команду через консоль, она работает нормально.

+0

Почему вы используете '+', когда нет переменных в строке? –

+0

Чтобы избежать кавычек, он печатает именно то, что я хочу, поэтому я не уверен, почему это будет проблемой. – ThatGuy343

+1

Вы используете следующий экран «String cmd =» -dmS test -X eval \ 'stuff \ "stop \\ 015 \" \' ";' –

ответ

0

Попробуйте однажды: -

String cmd[] = {"screen","-dmS","test","-X","eval", "'stuff","\"stop\\015\"'"}; 
try { 
    Runtime.getRuntime().exec(cmd); 
} catch (IOException e) { e.printStackTrace(); } 
+0

По-прежнему говорит о недостающей цитате. – ThatGuy343

+0

@ ThatGuy343 Я пробовал, но не смог..апологии :( –

+0

Все хорошо, я думаю, что найду еще один способ делая это без использования экрана. – ThatGuy343

Смежные вопросы