Allow variable word count, introduce -w argument.
This commit is contained in:
parent
7e3bde7e0b
commit
fcbb45905d
13
passphrase
13
passphrase
@ -7,6 +7,7 @@
|
|||||||
|
|
||||||
SPACE=0 # default to no spaces between words
|
SPACE=0 # default to no spaces between words
|
||||||
COUNT=1 # default to one group of passphrases
|
COUNT=1 # default to one group of passphrases
|
||||||
|
WORDS=3 # default to three-word phrases
|
||||||
|
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
@ -28,6 +29,12 @@ while [[ $# > 0 ]]; do # iterate through arguments, one or two steps at a time
|
|||||||
shift
|
shift
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
-w) # we are specifying a word count
|
||||||
|
WORDS="$2"
|
||||||
|
# skip the argument; see above
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
# we were given an argument we don't understand or don't care
|
# we were given an argument we don't understand or don't care
|
||||||
# about. Let's just... ignore it completely, shall we?
|
# about. Let's just... ignore it completely, shall we?
|
||||||
@ -38,7 +45,7 @@ while [[ $# > 0 ]]; do # iterate through arguments, one or two steps at a time
|
|||||||
|
|
||||||
done
|
done
|
||||||
|
|
||||||
if [ "$COUNT" -lt 1 ]; then
|
if [ "$COUNT" -lt 1 ] || [ "$WORDS" -t 1 ] ; then
|
||||||
|
|
||||||
echo -e "Don't be cheeky.\n"
|
echo -e "Don't be cheeky.\n"
|
||||||
|
|
||||||
@ -48,9 +55,9 @@ for (( z = 1; z <= $COUNT; z++ )); do # give us COUNT groupings of five passphra
|
|||||||
|
|
||||||
for i in {1..5}; do
|
for i in {1..5}; do
|
||||||
|
|
||||||
PASSPHRASE=`grep "^[a-z]\{3,8\}$" /usr/share/dict/words | shuf -n3`
|
PASSPHRASE=`grep "^[a-z]\{3,8\}$" /usr/share/dict/words | shuf -n$WORDS`
|
||||||
# select all words from the standard linux words file with a length between
|
# select all words from the standard linux words file with a length between
|
||||||
# 3 and 8 characters. Give us three of those words at random.
|
# 3 and 8 characters. Give us some of those words at random.
|
||||||
|
|
||||||
if [ "$SPACE" -eq 0 ]; then # if we want spaces stripped
|
if [ "$SPACE" -eq 0 ]; then # if we want spaces stripped
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user