Using levers to open cages takes too long, but I've found something that works pretty well: Move them all into one cage. Having a bunch of goblins, trolls, beak dogs, and kobolds all squished together in one cage isn't a big problem to deal with.
First I build all the occupied cages next to each other, and as far away from the door as possible. Preferably in a longish room with doors at only one end, so it doesn't get a lot of traffic. I like to use the archery range. Then I station a squad in the middle of the room, between the cages and the only door. Once all the cages are in place and the squad has finally shown up, I assign everyone in the room to the same cage. Eventually a dwarf will come along and start moving them between cages. There is a chance when being moved that an occupant will escape, and if he does the waiting squad will quickly cut him down. Whether they try to escape or not, all of my cages except one are now empty, so I set them to be removed and then they are available for re-use in cage traps. The single occupied cage can be left in place for next time I need to empty cages.
I don't know if there is a limit to how many creatures can share a cage (there doesn't seem to be) but if a cage ever got full it could either be placed in a zoo or put in an execution chamber. Linking a lever to a single cage wouldn't take too long.