#!/bin/sh # OpenOffice.org Optimizer # Copyright 2006 Joel Bryan T. Juliano <joelbryan.juliano@gmail.com> # GNU Public License openoffice_dir="/opt/openoffice" action="`find $openoffice_dir -type f -exec file '{}' \; | grep "XML document text"`" file_list="`echo $action | sed 's/: XML document text//g'`" directories="`find $openoffice_dir -type d`" tmpdir="/tmp" tmp_suffix="_tmp" for x in $directories do mkdir -p "$tmpdir$x" done counter=0 rounds=2 while [ $counter -ne $rounds ] do for i in $file_list do cat $i | sed -e '/^[ \t]*$/d;s,^[ \t]*,,;s,>[ \t]*<,><,g;s,[ \t]*$,,' > "$tmpdir$i$tmp_suffix" cat "$tmpdir$i$tmp_suffix" | tr '\012' ' ' > "$tmpdir$i" 2> /dev/null sudo cp "$tmpdir$i" "$i" 2> /dev/null rm -rf "$tmpdir$i$tmp_suffix" done counter=$(( $counter + 1 )) done |
Optimiser script for the OpenOffice.org 2 XML files