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
 |