#!/usr/bin/env bash
###
# Prints the index number, followed by the value of the file's first
# line. This means that CSV's with headers create a nice list and CSV
# files without headers are easier to flesh out.
###
main() {
local file
file=$(check_args "$@")
[[ $file == "1" ]] \
&& echo "Could not find input file, or file does not exist" \
&& exit 1
csv_header=$(head -n 1 "${1}")
IFS=',' read -r -a array <<< "$csv_header"
for index in "${!array[@]}"; do
printf "%s\t%s\n" "$index" "${array[index]}"
done
}
check_args() {
[[ ! -z $1 ]] && [[ -f "$1" ]] && echo "0" || echo "1"
}
main "$@"
Comments