-
-
Notifications
You must be signed in to change notification settings - Fork 9
ConditionCheck
gcreate edited this page Jan 29, 2015
·
1 revision
Send string command to serial port device,wait for result ,check result and send new string command to serial port device
package testcase;
import serialportutil.AbstractSerialCommand;
import serialportutil.CommandBatch;
import serialportutil.SerialPortConf;
import serialportutil.StringOutputStream;
/**
* Condition check <BR>
* 1. Send command 'ls /system/bin' <BR>
* 2. Check result <BR>
* 3. If result include 'ps', Send command 'ps |grep sh'
*
*/
public class ConditionCheck extends AbstractSerialCommand {
private StringOutputStream stringOutput = new StringOutputStream();
@Override
protected void setup() {
setSerialPortConf(new SerialPortConf("COM15", 115200, 8, 1, 0));
addOutputStream(stringOutput);
}
@Override
protected void processCommand() throws Exception {
sendCommand("ls /system/bin\n", 1000, 1);
// Get result
String[] items = stringOutput.toStrings();
boolean continueProcess = false;
for (String item : items) {
if (item.indexOf("ps") >= 0) {
continueProcess = true;
System.out.println("Has 'ps' command !");
break;
}
}
if (!continueProcess) {
return;
}
// Run command 'ps |grep sh' and get new result
System.out.println("Execute 'ps |grep sh' command !");
stringOutput.clear();
sendCommand("ps |grep sh\n", 1000, 1);
System.out.println(stringOutput.toString());
}
public static void main(String[] args) {
CommandBatch.addClazz(ConditionCheck.class);
CommandBatch.go();
}
}
Output
Start>>class testcase.ConditionCheck
Connecting to COM15 [speed:115200] [databit:8] [stopbit:1] [paritybit:0]
Connected!
Has 'ps' command !
Execute 'ps |grep sh' command !
ps |grep sh
root 715 2 0 0 bf3ecc88 00000000 D Flash
shell 759 1 968 508 c002c9c0 b6f8e378 S /system/bin/sh
root 763 1 940 444 c002c9c0 b6ea1378 S /system/bin/sh
root 14156 759 956 484 c002c9c0 b6f46378 S sh
shell@root:/data #
Close:class serialportutil.StringOutputStream
Disconnected from COM15
End<<<<class testcase.ConditionCheck
Email:flylb1@gmail.com