Setting up of multiple tablets from out the box
So here's a solution for Linux. The first part you already mentioned in your question, but for completeness I'll include it nevertheless:

#!/bin/bash
#
echo "Plug in the cable now, please!"
# Just kidding: That and skipping the intro you'll have to do manually :)
# As well as ensuring that USB debugging is enabled etc. Test with
# "adb devices". If it shows the connected device, go on.

# Install Wireless Settings
echo "Installing wireless settings..."
adb shell su -c "echo 'network={\nssid="Wireless"\npsk="i*********m"\nkey_mgmt=WPA-PSK\npriority=1\n}' &gt;&gt; /data/misc/wifi/wpa_supplicant.conf"

# Install Required APK
# assuming all the required APK files reside in a "install" sub-directory:
echo "Installing APKs..."
for apk in install/*.apk; do
   adb install "${apk}"
done

# Push Required Configuration Files
# these and all other files you want to push you've placed into
# the "upload" sub-directory **WITH FULL PATH** (e.g. to push "foo" to
# "/data/local", it would be saved as "upload/data/local/foo
echo "Uploading files..."
adb push upload /

# Restart Tablet if Required
echo "Rebooting device..."
adb reboot


Of course, this is just a skeleton; you might wish to have some "success checking" in place, or write a log to evaluate later. But it contains all the technical stuff you need:


adb shell su -c "command" to execute a command as root – here for appending your wireless settings
adb install to install your APK files. In case these are just newer versions of apps already installed on the devices, add the -r (re-install) switch; a simple install would fail then (i.e. make it adb install -r "${apk}")
adb push to transfer files to the device. Note a few things here:

Syntax is adb push &lt;source&gt; &lt;target&gt; (the counterpart would be adb pull &lt;source&gt; &lt;target&gt;)
you can push a file, or an entire directory
&lt;source&gt; and &lt;target&gt; must be of the same type (i.e. either both are a file name, or both are a directory name)
you can only push to directories you've got write access to. So in order to push into "system areas", the ADB daemon on the device must be running in root mode



As the last condition usually is a culprit (on "production devices", adbd runs in "secure mode" – i.e. non-root), use a work around by first pushing the files to a "common area" (e.g. the internal SD card), and then copy them over. Example:

adb shell "mkdir /sdcard/misc"
adb push upload/data/misc /sdcard/misc
adb shell sudo -c "cp -a /sdcard/misc /data/misc


And as a last hint: You might need to check permissions (incl. ownership), at least when it comes to system relevant files. So first try with one device, investigate the results, see if it works as expected (adjust if not – incl. adjusting your script(s)) – and if necessary factory-reset and start over to verify it's working now. And BTW: These "install and upload" stuff is the next item on my ToDo list for Adebar ;)

Good luck!