Umgang mit Strings verbessert (Support für Dateinamen mit Leerzeichen)

This commit is contained in:
Florian Schlegel 2016-09-04 14:28:08 +02:00
parent c184ece44e
commit 04eb10fb42
2 changed files with 19 additions and 19 deletions

View File

@ -1,27 +1,27 @@
#! /bin/bash
INPUT=$1
OUTPUT=$2
export OW=$3
export OH=$4
W=$5
INPUT="$1"
OUTPUT="$2"
export OW="$3"
export OH="$4"
W="$5"
if [ "$OW" == "" ]; then OW=0; fi
if [ "$OH" == "" ]; then OH=0; fi
OPTIONS="-resize $W -set depth 8 -set colorspace RGB"
#initial conversion
convert-im6 $OPTIONS $INPUT txt:- | awk -v ow=$OW -v oh=$OH 'match($0, /^([0-9]*),([0-9]*):.*#([0-9A-Fa-f]{6,8}) +r/, arr ){ print "PX " arr[1]+ow " " arr[2]+oh " " arr[3] }' > $OUTPUT
convert-im6 $OPTIONS "$INPUT" txt:- | awk -v ow=i"$OW" -v oh="$OH" 'match($0, /^([0-9]*),([0-9]*):.*#([0-9A-Fa-f]{6,8}) +r/, arr ){ print "PX " arr[1]+ow " " arr[2]+oh " " arr[3] }' > "$OUTPUT"
echo optimizing >&2
# edge detection
convert-im6 $OPTIONS $INPUT -negate -edge 4 -negate txt:- | awk -v ow=$OW -v oh=$OH 'match($0, /^([0-9]*),([0-9]*):.*#000000/, arr ){ print "PX " arr[1]+ow " " arr[2]+oh " " }' > /tmp/px6_optimize
grep -Ff /tmp/px6_optimize $OUTPUT > ${OUTPUT}.tmp
grep -Ff /tmp/px6_optimize $OUTPUT >> ${OUTPUT}.tmp
grep -Ff /tmp/px6_optimize $OUTPUT >> ${OUTPUT}.tmp
grep -Ff /tmp/px6_optimize $OUTPUT >> ${OUTPUT}.tmp
cat ${OUTPUT}.tmp >> $OUTPUT
cat $OUTPUT | grep -ve " [a-fA-F0-9]\{6\}00" | shuf > ${OUTPUT}.tmp
mv ${OUTPUT}.tmp $OUTPUT
convert-im6 $OPTIONS "$INPUT" -negate -edge 4 -negate txt:- | awk -v ow="$OW" -v oh="$OH" 'match($0, /^([0-9]*),([0-9]*):.*#000000/, arr ){ print "PX " arr[1]+ow " " arr[2]+oh " " }' > /tmp/px6_optimize
grep -Ff /tmp/px6_optimize "$OUTPUT" > "${OUTPUT}.tmp"
grep -Ff /tmp/px6_optimize "$OUTPUT" >> "${OUTPUT}.tmp"
grep -Ff /tmp/px6_optimize "$OUTPUT" >> "${OUTPUT}.tmp"
grep -Ff /tmp/px6_optimize "$OUTPUT" >> "${OUTPUT}.tmp"
cat "${OUTPUT}.tmp" >> "$OUTPUT"
cat "$OUTPUT" | grep -ve " [a-fA-F0-9]\{6\}00" | shuf > "${OUTPUT}.tmp"
mv "${OUTPUT}.tmp" "$OUTPUT"
rm /tmp/px6_optimize

View File

@ -1,8 +1,8 @@
#! /bin/bash
IP=$1
PORT=$2
PROCS=$3
FILE=$4
IP="$1"
PORT="$2"
PROCS="$3"
FILE="$4"
PROCMAXTIME=60
MAINPID=$$
@ -22,7 +22,7 @@ for i in $(seq 0 $(($PROCS-1))); do
THISPID2=$BASHPID
( sleep $PROCMAXTIME; kill -9 $THISPID2 >/dev/null 2>&1 ) &
echo "starting $(($i+1)) / $PROCS"
( while kill -0 $THISPID2; do cat $FILE; done ) | nc $IP $PORT >/dev/null 2>&1
( while kill -0 $THISPID2; do cat "$FILE"; done ) | nc "$IP" "$PORT" >/dev/null 2>&1
) >/dev/null 2>&1
done
) &