tarflat (446 bytes)
1 #!/bin/sh 2 PWD1=$(pwd) 3 flatfile () { 4 mkdir -p out 5 cd out || return 1 6 tar -xf ../"$1" 7 cd "$PWD1" || return 1 8 cd "$PWD1"/out/Hack/build/ttf || return 1 9 tar -cf - * | xz -12 >"$PWD1"/"$1.flat" 10 mv "$PWD1"/"$1.flat" "$PWD1"/"$1" 11 cd "$PWD1" || return 1 12 rm -Rf out 13 } 14 15 # can't use -exec on shell functions, so do this 16 find . -name '*.tar.xz' | while read -r file ; do flatfile "$(echo $file | sed 's/^\.\///')" ; done