summaryrefslogtreecommitdiff
path: root/misc/lk.sh
diff options
context:
space:
mode:
Diffstat (limited to 'misc/lk.sh')
-rwxr-xr-xmisc/lk.sh28
1 files changed, 28 insertions, 0 deletions
diff --git a/misc/lk.sh b/misc/lk.sh
new file mode 100755
index 0000000..5f760c6
--- /dev/null
+++ b/misc/lk.sh
@@ -0,0 +1,28 @@
+#!/bin/bash
+
+# This is helper that should replace a number of common commands
+#
+# It is intended to be named `lk`, short for "look"
+
+longView=${PAGER:-$(which less || which more || echo "cat")}
+dirView="ls --color=always -Alh"
+
+if [ $# -lt 1 ]; then
+ # take stdin instead
+ $dirView $(pwd) | ${longView}
+fi
+
+for a in $@; do
+ if [ $a == "" ]; then
+ echo "Empty argument skipped"
+ elif [ ! -e $a ]; then
+ echo "$a does not exist" 1>&2
+ exit -1
+ elif [ -d $a ]; then
+ $dirView $a
+ elif [ $(tput lines) -ge $(($(wc -l < $a) - 2)) ]; then
+ cat $a
+ else
+ ${longView} $a
+ fi
+done