1
0
Fork 0
mirror of https://github.com/notwa/rc synced 2024-11-12 15:49:03 -08:00
rc/sh/slitt

22 lines
699 B
Bash
Executable file

#!/usr/bin/env dash
# compat: +ash +bash +dash +zsh
# works with busybox ash.
slitt() { ### @-
### view specific columns of text.
### this version of `slit` uses tabs for its field separators.
[ $# -gt 0 ] \
|| { printf '%s: too few arguments\n' "$0" >&2; return 1; }
local arg=
for arg; do
[ "$arg" -ge 0 ] 2>/dev/null \
|| { printf '%s: not a nonnegative integer: %s\n' "$0" "$arg"; return 1; };
done
awk 'BEGIN { FS="\t"; OFS="\t" }'\ "{ print $(printf ',$%s' $@ | cut -b2-) }"
# via: https://github.com/sorin-ionescu/prezto/
#awk "BEGIN { FS=\"\\t\"; OFS=\"\\t\" } { print ${(j:,:):-\$${^@}} }"
}
[ -n "${preload+-}" ] || slitt "$@"