1
0
Fork 0

Offsets for CLI guru

This commit is contained in:
Jeremy Kaplan 2018-10-03 11:49:21 -07:00 committed by Jeremy Kaplan
commit f5e181c272

22
bin/offset Executable file
View file

@ -0,0 +1,22 @@
#!/usr/bin/env bash
set -euo pipefail
if [ "$#" -lt 3 ]; then
cat <<-USAGE
Usage: $0 filename line column
USAGE
exit 1
fi
fname="$1"
linum="$(("$2"))"
beforelines="$((linum - 1))"
colnum="$3"
beforecols="$((colnum - 1))"
offset=$({
head --quiet --lines "$beforelines" "$fname"
sed -n "${linum}p" "$fname" | awk '{ print substr($0,0,'"$beforecols"') }'
} | wc -c)
echo "$((offset - 1))"