summaryrefslogtreecommitdiff
path: root/diff/patch-daemon.sh
blob: 0c4530f9dbd3c044c56c2bdaf5424d0e36238ef2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#!/bin/sh
name='patch-daemon'
ver='1.0'
#  Copyright (C) 2009 Luke Shumaker
#  
#  This file is part of diff-daemon.
#  
#  diff-daemon is free software; you can redistribute it and/or modify it under
#  the terms of the GNU General Public License as published by the Free Software
#  Foundation; either version 2, or (at your option) any later version.
#  
#  diff-daemon is distributed in the hope that it will be useful, but
#  WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
#  See the GNU General Public License for more details.
#  
#  You should have received a copy of the GNU General Public License
#  along with diff-daemon; see the file COPYING
#  If not, write to the Free Software Foundation,
#  59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

file="${1}"
diff="${2-/dev/stdin}"

while read line; do
	com="`echo "$line" | sed 's/^\(.\).*$/\1/'`"
	arg="`echo "$line" | sed "s/^$com//"`"
	case "$com" in
		n)	echo "$arg";;
		b)
			i='0'; while [ "$i" -lt "$arg" ]; do
				echo ''
				i=`expr $i + 1`
			done
			:;;
		c)	sed -n "$arg p" "$file";;
	esac
done < "$diff"