upassword: possibilité de spécifier de façon dynamique la ligne à afficher après
This commit is contained in:
parent
295af1de28
commit
a74a37392a
21
upassword
21
upassword
|
@ -5091,25 +5091,28 @@ public class upassword {
|
|||
|
||||
private static final Pattern SPACES = Pattern.compile("\\s+");
|
||||
|
||||
private static final String BATCH_OPTION = "--batch";
|
||||
|
||||
private static final String AFTER_COMMAND = BATCH_OPTION + "-after ";
|
||||
|
||||
private static final int AFTER_COMMAND_STRIP = AFTER_COMMAND.length();
|
||||
|
||||
public static void main(String[] args) {
|
||||
upassword upassword = new upassword();
|
||||
if (args.length > 0 && args[0].equals("--batch")) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (int i = 1; i < args.length; i++) {
|
||||
if (i > 1) sb.append(" ");
|
||||
sb.append(args[i]);
|
||||
}
|
||||
String after = sb.toString();
|
||||
if (after.length() == 0) after = null;
|
||||
|
||||
if (args.length > 0 && args[0].equals(BATCH_OPTION)) {
|
||||
String after = null;
|
||||
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
|
||||
try {
|
||||
while (true) {
|
||||
String line = br.readLine();
|
||||
if (line == null) break;
|
||||
if (line.startsWith(AFTER_COMMAND)) {
|
||||
after = line.substring(AFTER_COMMAND_STRIP);
|
||||
} else {
|
||||
upassword.run(SPACES.split(line));
|
||||
if (after != null) println(after);
|
||||
}
|
||||
}
|
||||
} catch (IOException e) {
|
||||
die(null, e);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue