35 lines
		
	
	
	
		
			495 B
		
	
	
	
		
			Text
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
	
		
			495 B
		
	
	
	
		
			Text
		
	
	
		
			Executable file
		
	
	
	
	
| : Update Files from database
 | |
| 
 | |
| PATH=/bin:/usr/bin
 | |
| 
 | |
| case $# in
 | |
| 1) ;;
 | |
| *)	echo use: $0 file >&2
 | |
| 	exit 1
 | |
| esac
 | |
| 
 | |
| (
 | |
| IFCOMMAND="if (<\$FN) 2>/dev/null;\
 | |
| 	then	if cmp -s \$FN \$TMP;\
 | |
| 		then	rm \$TMP;\
 | |
| 		else	mv \$TMP \$FN;\
 | |
| 			echo update \$FN;\
 | |
| 		fi;\
 | |
| 	else	mv \$TMP \$FN;\
 | |
| 		echo create \$FN;\
 | |
| 	fi"
 | |
| echo 'TMP=.uf$$'
 | |
| echo 'FN=$TMP'
 | |
| echo 'cat >$TMP <<\!EOF!'
 | |
| sed -n '/^!File:/,${
 | |
| /^$/d
 | |
| /^!File:[	 ]*\(.*\)$/s@@!EOF!\
 | |
| '"$IFCOMMAND"'\
 | |
| FN=\1\
 | |
| cat >$TMP <<\\!EOF!@
 | |
| p
 | |
| }' $1
 | |
| echo '!EOF!'
 | |
| echo $IFCOMMAND
 | |
| ) |
 | |
| sh
 |