如何在Spring Shell中执行命令?

时间:2016-01-26 17:56:25

标签: raspberry-pi spring-shell

我在Spring Shell中执行命令时遇到问题。我正在使用此代码在Raspberry PI上闪烁我的LED,但我在Tomcat的日志中收到响应错误。

JLineShellComponent shell;
Bootstrap bootstrap = new Bootstrap();      
shell = bootstrap.getJLineShellComponent();
shell.executeCommand("gpio -g write 17 1");
shell.stop();

日志输出为:

org.springframework.shell.core.SimpleParser commandNotFound
WARNING: Command 'sudo gpio -g write 17 1' not found (for assistance press TAB)

当我使用echo命令时问题仍然存在。

1 个答案:

答案 0 :(得分:1)

如果要通过Spring Shell执行OS命令,则必须添加感叹号。

shell.executeCommand("! gpio -g write 17 1");

更好的解决方案是根本不使用Spring Shell

Runtime.getRuntime().exec("gpio -g write 17 1");