1
0
Fork 0
mirror of https://github.com/notwa/rc synced 2024-05-20 10:53:23 -07:00
rc/sh/countdiff

25 lines
645 B
Bash
Executable File

#!/usr/bin/env sh
# YES_ZSH
# YES_BASH
# YES_DASH
# YES_ASH
# YES_BB_AWK
countdiff() { ### @-
### count the number of lines changed between two files.
###
### **TODO:** don't use git for this. also, use patience algorithm.
###
### ```
### $ countdiff README-old.md README.md
### 739
### ```
[ $# -gt 1 ] || { printf "%s\n" "$0: too few arguments" >&2; return 1; }
[ $# -le 2 ] || { printf "%s\n" "$0: too many arguments" >&2; return 1; }
git --no-pager diff --stat --no-color --no-index "$1" "$2" \
| awk '/changed/{print $4+$6;a=1}END{if(!a)print 0}'
}
[ -n "${preload+-}" ] || countdiff "$@"