/** * 自动根据操作系统的类型执行对应的命令类型。执行完成后以String形式返回执行结果<br> * 如命令:"svn info ...",即可以在windows下执行也可以在Linux下执行<br> * 使用此命令时只需关注命令内容,而无需再判断操作系统适配<br> * * @param command * @return */ public static String executeLinuxOrWindowsCmd(String command) { if (OS.isFamilyWindows()) { return executeWindowsCmd(command); } else if (OS.isFamilyUnix()) { return executeLinuxCmd(command); } else { return "仅支持Linux和Windows命令"; } }
public static void main(String[] args) throws Exception { SeleniumJavaRobot seleniumJavaRobot = new SeleniumJavaRobot(); String browser; seleniumJavaRobot.autoRestart = false; if (OS.isFamilyMac()) { browser = "safari"; } else { browser = "firefox"; } seleniumJavaRobot.url = "http://localhost:7777/__attester__/slave.html"; String usageString = String.format( "Usage: selenium-java-robot [options]\nOptions:\n --auto-restart\n --url <url> [default: %s]\n --browser <browser> [default: %s, accepted values: %s]\n -DpropertyName=value", seleniumJavaRobot.url, browser, BROWSERS_LIST.toString()); for (int i = 0, l = args.length; i < l; i++) { String curParam = args[i]; if ("--browser".equalsIgnoreCase(curParam) && i + 1 < l) { browser = args[i + 1]; i++; } else if ("--url".equalsIgnoreCase(curParam) && i + 1 < l) { seleniumJavaRobot.url = args[i + 1]; i++; } else if ("--auto-restart".equalsIgnoreCase(curParam)) { seleniumJavaRobot.autoRestart = true; } else if ("--version".equalsIgnoreCase(curParam)) { System.out.println(Main.class.getPackage().getImplementationVersion()); return; } else if ("--help".equalsIgnoreCase(curParam)) { System.out.println(usageString); return; } else { Matcher matcher = SET_SYSTEM_PROPERTY_REGEXP.matcher(curParam); if (matcher.matches()) { System.setProperty(matcher.group(1), matcher.group(2)); } else { System.err.println("Unknown command line option: " + curParam); System.err.println(usageString); return; } } } seleniumJavaRobot.robotizedBrowserFactory = LocalRobotizedBrowserFactory.createRobotizedWebDriverFactory(browser); seleniumJavaRobot.start(); closeOnStreamEnd(seleniumJavaRobot, System.in); closeOnProcessEnd(seleniumJavaRobot); }