You can run cgminer --help to see the options or you can just research them online. A good example is this website: https://github.com/pshep/cgminer
I've never done it but I think you can add a rotate option:
--rotate <arg>
Change multipool strategy from failover to regularly rotate at N minutes (default: 0)
80% / 20% would be roughly 19 hours / 5 hours or 1140 minutes / 300 minutes
Now, with the --rotate <arg>
you will rotate the pools regularly, so it's easy to set it to 50/50on two pools, 33/33/33 on three pools etc.
I think you could achieve an 80/20 split by using a scheduled start and stop times.
--sched-start <arg>
Set a time of day in HH:MM to start mining (a once off without a stop time)
--sched-stop <arg>
Set a time of day in HH:MM to stop mining (will quit without a start time)
Say, you start mining at 00:01, you set the rotate setting to 19 hours (1140 minutes), at 7 PM the pools will switch, set a stop time for 23:59 and 2 minutes later the miner should start mining using the first pool again. The only problem could be if after the miner stops, it could start mining still on the second pool, in which case you should start at midnigh, only use the --rotate 1140
and always restart cgminer at midnight manually or maybe using a shell script (or bat if on Windows).