diff options
Diffstat (limited to 'diff/patch-daemon.sh')
-rw-r--r-- | diff/patch-daemon.sh | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/diff/patch-daemon.sh b/diff/patch-daemon.sh new file mode 100644 index 0000000..0c4530f --- /dev/null +++ b/diff/patch-daemon.sh @@ -0,0 +1,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" + |