annotate master/bin/pbash.sh @ 54:1099246f22b6

new scripts
author Henry S. Thompson <ht@markup.co.uk>
date Fri, 08 Feb 2019 17:46:49 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
54
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
1 #!/bin/bash
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
2 if [ $# -lt 1 ]
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
3 then
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
4 cat 1>&2 <<EOF
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
5 Usage: $0 [-h sshHostFile] cmd [...args]
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
6 Where SSname is the name of a VM scale set.
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
7 sshHostFile (defaults to $WORKERS) is the name of a file in
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
8 .parallel which lists hosts and ports, see man parallel for details
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
9
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
10 Runs cmds/cmdlines on every machine in a scale set,
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
11 using parallel --nonall
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
12
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
13 cmd+args can be quoted to run over multiple lines
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
14
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
15 Use xargs $0... to get multiple args from stdin, e.g.
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
16 > xargs $0 W4 echo
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
17 hello
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
18 world
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
19 ^D
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
20 hello world
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
21 hello world
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
22 ...
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
23
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
24 Do
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
25 > echo 'will cite' | parallel --citation 2>/dev/null
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
26 to turn off citation prompt
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
27 EOF
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
28 exit 1
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
29 fi
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
30 if [ $1 = -h ]
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
31 then
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
32 shift
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
33 shf="$1"
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
34 shift
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
35 else
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
36 shf=$WORKERS
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
37 fi
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
38 parallel --sshloginfile $shf --nonall "$@"
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
39
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
40
1099246f22b6 new scripts
Henry S. Thompson <ht@markup.co.uk>
parents:
diff changeset
41