

That actually makes a lot of sense. I never even second guessed how tedious all the parsing is. But then, as others have said here, as soon as the task at hand reaches a level of complexity beyond grepping, piping and so on I just very naturally move to Python.
On a different note, there are ways to teach bash json. I recall seeing a hacker conference talk on it some time ago, but didn’t pay close attention.
I have done a similar thing in the past, but to flash firmware onto any device with a certain USB descriptor that gets plugged in. It was a mess of USB hubs and cables, but it worked.
What I did was write a udev rule that checks for the vendor and product id of a newly plugged in device and calls a script when there’s a match. The script then performs the flashing and logs the output.
In your case:
dd
the source USB to a file (make sure the partition you’re dding is smalled than any target driveEdit. Did this on a rpi3