diff options
Diffstat (limited to 'tools/csv.reorder')
-rwxr-xr-x | tools/csv.reorder | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tools/csv.reorder b/tools/csv.reorder new file mode 100755 index 0000000..8a64239 --- /dev/null +++ b/tools/csv.reorder | |||
@@ -0,0 +1,17 @@ | |||
1 | #! /bin/bash | ||
2 | |||
3 | # show each field with index in csv | ||
4 | echo -------------- > /dev/tty | ||
5 | head -1 < $1 | awk -F',' '{for (i=1; i<=NF; i++) printf $i "_" i " "; print ""}' > /dev/tty | ||
6 | echo -------------- > /dev/tty | ||
7 | echo > /dev/tty | ||
8 | |||
9 | read -p "type column numbers by new order, like 3 2 1: " order | ||
10 | |||
11 | arrange=$(echo $order | sed -r 's/([^ ]+)/$\1/g' | tr ' ' ',') | ||
12 | |||
13 | cat $1 |\ | ||
14 | awk -F',' "BEGIN{OFS=\",\"}{print $arrange}" |\ | ||
15 | tee /tmp/csv | ||
16 | |||
17 | echo "Also copied to /tmp/csv" > /dev/tty | ||