title: Adjust length of generated password with crunch
body: <p>I am creating a wordlist with crunch for Bruteforce is easy since you can define what character would be used. But with words for some reason I can't figure out how to set the length of the generated passwords so that the password doesn't have to contain all the words specified.</p>
  <p><strong>Example:</strong></p>
  <p><strong>the command: 'crunch 1 3 -p this a test' returns:</strong></p>
  <p><em>- atestthis athistest testathis testthisa thisatest thistesta</em></p>
  <p><strong>but i would like for it to return:</strong></p>
  <p><em>- a test this atest athis testa testthis thisa thistest atestthis
  athistest testathis testthisa thisatest thistesta</em></p>
  <p><strong>this is a python script I wrote to do what I would like crunch to do directly. Is there a way to do this directly with crunch?</strong></p>
  <pre><code>import os
  import argparse as arg
  
  parser = arg.ArgumentParser()
  parser.add_argument('words', help='list of words inside parentheses', type = str)
  parser.add_argument('--extra', type = str, help = 'all the extra arguments instide parentheses excluding -p, -t and -o')
  args = parser.parse_args()
  list_words = args.words.split()
  pattern = ''
  wordlist_amount = ''
  
  for word in range(1,len(list_words)+1):
      pattern = pattern + 'a'
      command = f'crunch {word} {word} {args.extra} -o temporary_wordlist{word}.txt -t {pattern} -p {args.words}'
      wordlist_amount = wordlist_amount + f'temporary_wordlist{word}.txt '
      os.system(command)
  os.system(f'cat {wordlist_amount} &gt; tmp.txt')
  os.system('uniq tmp.txt &gt; wordlist.txt')
  os.system('rm temporary_wordlist* | rm tmp.txt')
  </code></pre>