summaryrefslogtreecommitdiff
path: root/rushs/tinyprintf/cut_csv/with_sed.sh
blob: fb5e1f87f9725947bfa8801ffb360327845d3030 (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
#!/bin/sh

[ $# -ne 2 ] && exit 1

if ! [ -f "$1" ]; then
    exit 1
fi

if ! [ "$2" -eq "$2" ] 2>/dev/null; then
    exit 1
fi

[ "$2" -lt 0 ] && exit 1

if [ "$2" -gt $(wc -l < "$1") ]; then
    exit 1
fi

i=1

while IFS= read -r line; do
    [ "$i" -eq "$2" ] && echo "$line" | sed 's/^.*;\(.*\);\(.*\);.*;$/\1 is \2/'
    i=$(($i + 1))
done < "$1"