mirror of
https://github.com/limosek/zaf.git
synced 2024-11-10 20:57:21 +01:00
27 lines
484 B
Bash
27 lines
484 B
Bash
#!/bin/sh
|
|
|
|
. $(dirname $0)/preload.sh
|
|
|
|
help() {
|
|
zaf_err "$0 seconds cmd..."
|
|
}
|
|
|
|
seconds=$1
|
|
shift
|
|
[ -z "$*" ] && help
|
|
|
|
zaf_trc "zafcache($seconds): $ITEM_KEY,'$2' '$3' '$4' '$5' '$6' '$7' '$8' '$9'"
|
|
|
|
if [ -z "$ITEM_KEY" ]; then
|
|
key=$(echo $*|tr ' ' '_')
|
|
else
|
|
key="$(echo ${ITEM_KEY}|cut -d '[' -f 1)[$(shift; echo $*|tr ' ' ',')]"
|
|
fi
|
|
|
|
if ! zaf_fromcache "$key"; then
|
|
tmpf=$(zaf_tmpfile cache)
|
|
$@ 2>"$tmpf" | zaf_tocache_stdin "$key" "$seconds"
|
|
[ -s $tmpf ] && zaf_wrn <$tmpf
|
|
fi
|
|
|