mirror of
				https://github.com/limosek/zaf.git
				synced 2025-10-31 17:47:37 +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
 | |
| 
 | 
