Created
March 27, 2023 23:21
-
-
Save firexcy/75ffe0cc7707d6f5d506206b06b9dca1 to your computer and use it in GitHub Desktop.
pwgen.sh
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| main() { | |
| part1=$(pick) | |
| part2=$(pick) | |
| part3=$(pick) | |
| part1a=$(echo "$part1" | tr 'aeiost' '431057' | tr '[:lower:]' '[:upper:]') | |
| part2a=$(echo "$part2" | tr 'aceist' '@(&!$+') | |
| echo "$part1a-$part2a-$part3" | |
| echo "$part1 $part2 $part3" | |
| } | |
| pick() { | |
| cat <<EOF | shuf -n 1 | |
| able | |
| about | |
| above | |
| abroad | |
| accept | |
| access | |
| accuse | |
| across | |
| action | |
| active | |
| actor | |
| actual | |
| adapt | |
| admire | |
| admit | |
| adopt | |
| adult | |
| advice | |
| advise | |
| affair | |
| affect | |
| afford | |
| afraid | |
| after | |
| again | |
| agency | |
| agenda | |
| agent | |
| agree | |
| ahead | |
| alarm | |
| album | |
| alive | |
| allow | |
| almost | |
| alone | |
| along | |
| also | |
| alter | |
| always | |
| amazed | |
| among | |
| amount | |
| anger | |
| angle | |
| angry | |
| animal | |
| ankle | |
| annoy | |
| annual | |
| answer | |
| anyone | |
| anyway | |
| apart | |
| appeal | |
| appear | |
| apple | |
| apply | |
| april | |
| area | |
| argue | |
| arise | |
| armed | |
| arms | |
| army | |
| around | |
| arrest | |
| arrive | |
| artist | |
| aside | |
| asleep | |
| aspect | |
| assess | |
| assist | |
| assume | |
| attach | |
| attack | |
| attend | |
| august | |
| aunt | |
| author | |
| avoid | |
| award | |
| aware | |
| away | |
| awful | |
| baby | |
| back | |
| badly | |
| bake | |
| ball | |
| banana | |
| band | |
| bank | |
| base | |
| based | |
| basic | |
| basis | |
| bath | |
| battle | |
| beach | |
| bean | |
| bear | |
| beat | |
| beauty | |
| become | |
| beef | |
| beer | |
| before | |
| begin | |
| behave | |
| behind | |
| being | |
| belief | |
| bell | |
| belong | |
| below | |
| belt | |
| bend | |
| bent | |
| best | |
| better | |
| beyond | |
| bike | |
| bill | |
| bird | |
| birth | |
| bite | |
| bitter | |
| black | |
| blame | |
| blank | |
| blind | |
| block | |
| blog | |
| blond | |
| blood | |
| blow | |
| blue | |
| board | |
| boat | |
| body | |
| boil | |
| bomb | |
| bond | |
| bone | |
| book | |
| boot | |
| border | |
| bored | |
| boring | |
| born | |
| borrow | |
| boss | |
| both | |
| bother | |
| bottle | |
| bottom | |
| bowl | |
| brain | |
| branch | |
| brand | |
| brave | |
| bread | |
| break | |
| breast | |
| breath | |
| bride | |
| bridge | |
| brief | |
| bright | |
| bring | |
| broad | |
| broken | |
| brown | |
| brush | |
| bubble | |
| budget | |
| build | |
| bullet | |
| bunch | |
| burn | |
| bury | |
| bush | |
| busy | |
| butter | |
| button | |
| cable | |
| cafe | |
| cake | |
| call | |
| calm | |
| camera | |
| camp | |
| campus | |
| can | |
| cancel | |
| cancer | |
| candy | |
| cannot | |
| card | |
| care | |
| career | |
| carpet | |
| carrot | |
| carry | |
| case | |
| cash | |
| cast | |
| catch | |
| cause | |
| cell | |
| cent | |
| center | |
| chain | |
| chair | |
| chance | |
| change | |
| charge | |
| chart | |
| chat | |
| cheap | |
| cheat | |
| check | |
| cheese | |
| chef | |
| chest | |
| chief | |
| child | |
| chip | |
| choice | |
| choose | |
| church | |
| circle | |
| cite | |
| city | |
| civil | |
| claim | |
| class | |
| clause | |
| clean | |
| clear | |
| clerk | |
| clever | |
| click | |
| client | |
| climb | |
| clock | |
| close | |
| closed | |
| closet | |
| cloth | |
| cloud | |
| club | |
| clue | |
| coach | |
| coal | |
| coast | |
| coat | |
| code | |
| coffee | |
| coin | |
| cold | |
| color | |
| column | |
| come | |
| comedy | |
| commit | |
| common | |
| cook | |
| cookie | |
| cool | |
| copy | |
| core | |
| corn | |
| corner | |
| cost | |
| cotton | |
| could | |
| count | |
| county | |
| couple | |
| course | |
| court | |
| cousin | |
| cover | |
| crash | |
| crazy | |
| cream | |
| create | |
| credit | |
| crew | |
| crime | |
| crisis | |
| critic | |
| crop | |
| cross | |
| crowd | |
| cruel | |
| cure | |
| curly | |
| curve | |
| curved | |
| custom | |
| cycle | |
| daily | |
| damage | |
| dance | |
| dancer | |
| danger | |
| dark | |
| data | |
| date | |
| dead | |
| deal | |
| dear | |
| death | |
| debate | |
| debt | |
| decade | |
| decent | |
| decide | |
| deep | |
| deeply | |
| defeat | |
| defend | |
| define | |
| degree | |
| delay | |
| demand | |
| deny | |
| depend | |
| depth | |
| desert | |
| design | |
| desire | |
| desk | |
| detail | |
| detect | |
| device | |
| diary | |
| diet | |
| dinner | |
| direct | |
| dirt | |
| dirty | |
| dish | |
| disk | |
| divide | |
| doctor | |
| dollar | |
| donate | |
| door | |
| double | |
| doubt | |
| down | |
| dozen | |
| draft | |
| drag | |
| drama | |
| draw | |
| dream | |
| dress | |
| drink | |
| drive | |
| driver | |
| drop | |
| drug | |
| drum | |
| drunk | |
| during | |
| dust | |
| duty | |
| each | |
| early | |
| earn | |
| earth | |
| easily | |
| east | |
| easy | |
| edge | |
| edit | |
| editor | |
| effect | |
| effort | |
| eight | |
| eighty | |
| either | |
| elect | |
| eleven | |
| else | |
| emerge | |
| employ | |
| empty | |
| enable | |
| ending | |
| enemy | |
| energy | |
| engage | |
| engine | |
| enjoy | |
| enough | |
| ensure | |
| enter | |
| entire | |
| entry | |
| equal | |
| error | |
| escape | |
| essay | |
| estate | |
| euro | |
| even | |
| event | |
| ever | |
| every | |
| evil | |
| exact | |
| exam | |
| except | |
| excuse | |
| exist | |
| exit | |
| expand | |
| expect | |
| expert | |
| export | |
| expose | |
| extend | |
| extent | |
| extra | |
| face | |
| fact | |
| factor | |
| fail | |
| fair | |
| fairly | |
| faith | |
| fall | |
| false | |
| family | |
| famous | |
| fancy | |
| farm | |
| farmer | |
| fast | |
| fasten | |
| father | |
| fault | |
| favor | |
| fear | |
| feed | |
| feel | |
| fellow | |
| female | |
| fence | |
| fever | |
| field | |
| fifth | |
| fifty | |
| fight | |
| figure | |
| file | |
| fill | |
| film | |
| final | |
| find | |
| fine | |
| finger | |
| finish | |
| fire | |
| firm | |
| first | |
| fish | |
| five | |
| fixed | |
| flag | |
| flame | |
| flash | |
| flat | |
| flight | |
| float | |
| flood | |
| floor | |
| flour | |
| flow | |
| flower | |
| flying | |
| focus | |
| fold | |
| folk | |
| follow | |
| food | |
| foot | |
| force | |
| forest | |
| forget | |
| fork | |
| form | |
| formal | |
| former | |
| forty | |
| found | |
| four | |
| fourth | |
| frame | |
| free | |
| freeze | |
| fresh | |
| friday | |
| friend | |
| frog | |
| from | |
| front | |
| frozen | |
| fruit | |
| fuel | |
| full | |
| fully | |
| fund | |
| funny | |
| future | |
| gain | |
| game | |
| gang | |
| garage | |
| garden | |
| gate | |
| gather | |
| genre | |
| gentle | |
| ghost | |
| giant | |
| gift | |
| girl | |
| give | |
| glad | |
| glass | |
| global | |
| glove | |
| goal | |
| gold | |
| golf | |
| good | |
| goods | |
| govern | |
| grab | |
| grade | |
| grain | |
| grand | |
| grant | |
| grass | |
| gray | |
| great | |
| green | |
| greet | |
| ground | |
| group | |
| grow | |
| growth | |
| guard | |
| guess | |
| guest | |
| guide | |
| guilty | |
| guitar | |
| habit | |
| hair | |
| half | |
| hall | |
| hand | |
| handle | |
| hang | |
| happen | |
| happy | |
| hard | |
| hardly | |
| harm | |
| hate | |
| have | |
| head | |
| health | |
| hear | |
| heart | |
| heat | |
| heaven | |
| heavy | |
| heel | |
| height | |
| hell | |
| hello | |
| help | |
| here | |
| hero | |
| hers | |
| hide | |
| high | |
| highly | |
| hill | |
| hire | |
| hobby | |
| hockey | |
| hold | |
| hole | |
| hollow | |
| holy | |
| home | |
| honest | |
| honor | |
| hope | |
| horror | |
| horse | |
| host | |
| hotel | |
| hour | |
| house | |
| huge | |
| human | |
| humor | |
| hungry | |
| hunt | |
| hurry | |
| hurt | |
| idea | |
| ideal | |
| ignore | |
| image | |
| impact | |
| imply | |
| import | |
| impose | |
| inch | |
| income | |
| indeed | |
| indoor | |
| inform | |
| injure | |
| injury | |
| inner | |
| insect | |
| inside | |
| insist | |
| intend | |
| into | |
| invent | |
| invest | |
| invite | |
| iron | |
| island | |
| issue | |
| item | |
| itself | |
| jacket | |
| jazz | |
| jeans | |
| join | |
| joke | |
| judge | |
| juice | |
| july | |
| jump | |
| june | |
| junior | |
| just | |
| keep | |
| kick | |
| kill | |
| kind | |
| king | |
| kiss | |
| knee | |
| knife | |
| knock | |
| know | |
| label | |
| labor | |
| lack | |
| lady | |
| lake | |
| lamp | |
| land | |
| laptop | |
| large | |
| last | |
| late | |
| later | |
| latest | |
| laugh | |
| launch | |
| lawyer | |
| layer | |
| lazy | |
| lead | |
| leader | |
| leaf | |
| league | |
| lean | |
| learn | |
| least | |
| leave | |
| left | |
| legal | |
| lemon | |
| lend | |
| length | |
| less | |
| lesson | |
| letter | |
| level | |
| lie | |
| life | |
| lift | |
| light | |
| like | |
| likely | |
| limit | |
| line | |
| link | |
| lion | |
| liquid | |
| list | |
| listen | |
| little | |
| live | |
| lively | |
| living | |
| load | |
| loan | |
| local | |
| locate | |
| lock | |
| lonely | |
| long | |
| look | |
| loose | |
| lord | |
| lose | |
| loss | |
| lost | |
| loud | |
| loudly | |
| love | |
| lower | |
| luck | |
| lucky | |
| lunch | |
| lung | |
| luxury | |
| magic | |
| main | |
| mainly | |
| major | |
| make | |
| male | |
| mall | |
| manage | |
| manner | |
| many | |
| march | |
| mark | |
| market | |
| marry | |
| mass | |
| master | |
| match | |
| math | |
| matter | |
| maybe | |
| mayor | |
| meal | |
| mean | |
| means | |
| meat | |
| media | |
| medium | |
| meet | |
| melt | |
| member | |
| memory | |
| mental | |
| menu | |
| mess | |
| metal | |
| meter | |
| method | |
| middle | |
| might | |
| mild | |
| mile | |
| milk | |
| mind | |
| mine | |
| minor | |
| mirror | |
| miss | |
| mixed | |
| model | |
| modern | |
| modify | |
| moment | |
| monday | |
| money | |
| monkey | |
| month | |
| mood | |
| moon | |
| moral | |
| more | |
| most | |
| mostly | |
| mother | |
| motor | |
| mount | |
| mouse | |
| mouth | |
| move | |
| movie | |
| much | |
| murder | |
| muscle | |
| museum | |
| music | |
| must | |
| myself | |
| nail | |
| name | |
| narrow | |
| nation | |
| native | |
| nature | |
| near | |
| nearly | |
| neat | |
| neck | |
| need | |
| needle | |
| nerve | |
| never | |
| news | |
| next | |
| nice | |
| night | |
| nine | |
| ninety | |
| nobody | |
| noise | |
| noisy | |
| none | |
| normal | |
| north | |
| nose | |
| note | |
| notice | |
| notion | |
| novel | |
| number | |
| nurse | |
| obey | |
| object | |
| obtain | |
| occur | |
| ocean | |
| offend | |
| offer | |
| office | |
| often | |
| once | |
| onion | |
| online | |
| only | |
| onto | |
| open | |
| oppose | |
| option | |
| orange | |
| order | |
| organ | |
| origin | |
| other | |
| ought | |
| ours | |
| outer | |
| oven | |
| over | |
| owner | |
| pace | |
| pack | |
| page | |
| pain | |
| paint | |
| pair | |
| palace | |
| pale | |
| panel | |
| pants | |
| paper | |
| parent | |
| park | |
| part | |
| partly | |
| party | |
| pass | |
| past | |
| path | |
| peace | |
| pencil | |
| penny | |
| people | |
| pepper | |
| period | |
| permit | |
| person | |
| phase | |
| phone | |
| photo | |
| phrase | |
| piano | |
| pick | |
| piece | |
| pile | |
| pilot | |
| pink | |
| pipe | |
| pitch | |
| place | |
| plain | |
| plan | |
| plane | |
| planet | |
| plant | |
| plate | |
| play | |
| player | |
| please | |
| plenty | |
| plot | |
| plus | |
| poem | |
| poet | |
| poetry | |
| point | |
| poison | |
| police | |
| policy | |
| polite | |
| pool | |
| poor | |
| port | |
| pose | |
| post | |
| poster | |
| potato | |
| pound | |
| pour | |
| powder | |
| power | |
| praise | |
| pray | |
| prayer | |
| prefer | |
| press | |
| pretty | |
| price | |
| priest | |
| prime | |
| prince | |
| prison | |
| prize | |
| profit | |
| proof | |
| proper | |
| proud | |
| prove | |
| public | |
| pull | |
| punish | |
| pure | |
| purple | |
| pursue | |
| push | |
| queen | |
| quick | |
| quiet | |
| quit | |
| quite | |
| quote | |
| race | |
| racing | |
| radio | |
| rain | |
| raise | |
| range | |
| rank | |
| rapid | |
| rare | |
| rarely | |
| rate | |
| rather | |
| reach | |
| react | |
| read | |
| reader | |
| ready | |
| real | |
| really | |
| reason | |
| recall | |
| recent | |
| recipe | |
| record | |
| reduce | |
| refer | |
| regard | |
| region | |
| regret | |
| reject | |
| relate | |
| relax | |
| relief | |
| rely | |
| remain | |
| remark | |
| remind | |
| remote | |
| remove | |
| rent | |
| repair | |
| repeat | |
| reply | |
| report | |
| rescue | |
| resist | |
| resort | |
| rest | |
| result | |
| retain | |
| retire | |
| return | |
| reveal | |
| review | |
| revise | |
| reward | |
| rhythm | |
| rice | |
| rich | |
| ride | |
| right | |
| ring | |
| rise | |
| risk | |
| river | |
| road | |
| robot | |
| rock | |
| role | |
| roll | |
| roof | |
| room | |
| root | |
| rope | |
| rough | |
| round | |
| route | |
| row | |
| royal | |
| rubber | |
| rude | |
| rule | |
| runner | |
| rural | |
| rush | |
| sadly | |
| safe | |
| safety | |
| sail | |
| sailor | |
| salad | |
| salary | |
| sale | |
| salt | |
| same | |
| sample | |
| sand | |
| sauce | |
| save | |
| saving | |
| scale | |
| scan | |
| scared | |
| scary | |
| scene | |
| school | |
| score | |
| scream | |
| screen | |
| script | |
| search | |
| season | |
| seat | |
| secret | |
| sector | |
| secure | |
| seed | |
| seek | |
| seem | |
| select | |
| self | |
| sell | |
| senate | |
| send | |
| senior | |
| sense | |
| series | |
| serve | |
| settle | |
| seven | |
| severe | |
| sexual | |
| shade | |
| shadow | |
| shake | |
| shall | |
| shame | |
| shape | |
| share | |
| sharp | |
| sheep | |
| sheet | |
| shelf | |
| shell | |
| shift | |
| shine | |
| shiny | |
| ship | |
| shirt | |
| shock | |
| shoe | |
| shoot | |
| shop | |
| short | |
| shot | |
| should | |
| shout | |
| show | |
| shower | |
| shut | |
| sick | |
| side | |
| sight | |
| sign | |
| signal | |
| silent | |
| silk | |
| silly | |
| silver | |
| simple | |
| simply | |
| since | |
| sing | |
| singer | |
| single | |
| sink | |
| sister | |
| site | |
| sixty | |
| size | |
| skiing | |
| skill | |
| skin | |
| skirt | |
| slave | |
| sleep | |
| slice | |
| slide | |
| slight | |
| slip | |
| slope | |
| slow | |
| slowly | |
| small | |
| smart | |
| smell | |
| smile | |
| smoke | |
| smooth | |
| snake | |
| snow | |
| soap | |
| soccer | |
| social | |
| sock | |
| soft | |
| soil | |
| solar | |
| solid | |
| solve | |
| some | |
| song | |
| soon | |
| sorry | |
| sort | |
| soul | |
| sound | |
| soup | |
| source | |
| south | |
| space | |
| speak | |
| speech | |
| speed | |
| spell | |
| spend | |
| spicy | |
| spider | |
| spirit | |
| split | |
| spoken | |
| spoon | |
| sport | |
| spot | |
| spread | |
| spring | |
| square | |
| stable | |
| staff | |
| stage | |
| stair | |
| stamp | |
| stand | |
| star | |
| stare | |
| start | |
| state | |
| statue | |
| status | |
| stay | |
| steady | |
| steal | |
| steel | |
| steep | |
| step | |
| stick | |
| sticky | |
| stiff | |
| still | |
| stock | |
| stone | |
| stop | |
| store | |
| storm | |
| story | |
| stove | |
| stream | |
| street | |
| stress | |
| strict | |
| strike | |
| string | |
| strong | |
| studio | |
| study | |
| stuff | |
| stupid | |
| style | |
| submit | |
| subway | |
| such | |
| sudden | |
| suffer | |
| sugar | |
| suit | |
| summer | |
| sunday | |
| supply | |
| sure | |
| surely | |
| survey | |
| swear | |
| sweep | |
| sweet | |
| swim | |
| switch | |
| symbol | |
| system | |
| table | |
| tablet | |
| tail | |
| take | |
| tale | |
| talent | |
| talk | |
| tall | |
| tank | |
| tape | |
| target | |
| task | |
| taste | |
| taxi | |
| teach | |
| team | |
| tear | |
| tell | |
| tend | |
| tennis | |
| tent | |
| term | |
| test | |
| text | |
| than | |
| thank | |
| thanks | |
| that | |
| their | |
| theirs | |
| them | |
| theme | |
| then | |
| theory | |
| there | |
| they | |
| thick | |
| thief | |
| thin | |
| thing | |
| think | |
| third | |
| thirty | |
| this | |
| though | |
| threat | |
| three | |
| throat | |
| throw | |
| thus | |
| ticket | |
| tight | |
| till | |
| time | |
| tiny | |
| tire | |
| tired | |
| title | |
| today | |
| toilet | |
| tomato | |
| tone | |
| tongue | |
| tool | |
| tooth | |
| topic | |
| total | |
| touch | |
| tough | |
| tour | |
| toward | |
| towel | |
| tower | |
| town | |
| track | |
| trade | |
| train | |
| trash | |
| travel | |
| treat | |
| tree | |
| trend | |
| trial | |
| trick | |
| trip | |
| truck | |
| true | |
| truly | |
| trust | |
| truth | |
| tube | |
| tune | |
| tunnel | |
| turn | |
| twelve | |
| twenty | |
| twice | |
| twin | |
| type | |
| ugly | |
| unable | |
| uncle | |
| under | |
| unfair | |
| union | |
| unique | |
| unit | |
| united | |
| unless | |
| unlike | |
| until | |
| update | |
| upon | |
| upper | |
| upset | |
| upward | |
| urban | |
| urge | |
| used | |
| useful | |
| user | |
| usual | |
| valley | |
| value | |
| vary | |
| vast | |
| venue | |
| very | |
| victim | |
| video | |
| view | |
| viewer | |
| virus | |
| vision | |
| visit | |
| visual | |
| vital | |
| voice | |
| volume | |
| vote | |
| wage | |
| wait | |
| waiter | |
| wake | |
| walk | |
| wall | |
| want | |
| warm | |
| warn | |
| wash | |
| waste | |
| watch | |
| water | |
| wave | |
| weak | |
| wealth | |
| weapon | |
| wear | |
| week | |
| weigh | |
| weight | |
| well | |
| west | |
| what | |
| wheel | |
| when | |
| where | |
| which | |
| while | |
| white | |
| whole | |
| whom | |
| whose | |
| wide | |
| widely | |
| wife | |
| wild | |
| will | |
| wind | |
| window | |
| wine | |
| wing | |
| winner | |
| winter | |
| wire | |
| wise | |
| wish | |
| with | |
| within | |
| woman | |
| wonder | |
| wood | |
| wooden | |
| wool | |
| word | |
| work | |
| worker | |
| world | |
| worry | |
| worse | |
| worst | |
| worth | |
| would | |
| wound | |
| wrap | |
| write | |
| writer | |
| wrong | |
| yard | |
| yeah | |
| year | |
| yellow | |
| young | |
| your | |
| yours | |
| youth | |
| zero | |
| zone | |
| EOF | |
| } | |
| main |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment