Fixed ruby script to use STDIN, and pipe ll output to script

This commit is contained in:
Nathan Broadbent
2012-10-23 10:35:16 +13:00
parent 647e18e3ef
commit 7c7aedce03

View File

@@ -91,12 +91,10 @@ fi
# Adds numbered shortcuts to output of ls -l, just like 'git status' # Adds numbered shortcuts to output of ls -l, just like 'git status'
unalias ll > /dev/null 2>&1; unset -f ll > /dev/null 2>&1 unalias ll > /dev/null 2>&1; unset -f ll > /dev/null 2>&1
function ls_with_file_shortcuts { function ls_with_file_shortcuts {
local ll_output=''
if [ -z $_ls_bsd ]; then if [ -z $_ls_bsd ]; then
ll_output="$(ls -lhv --group-directories-first --color "$@")" local ll_output="$(ls -lhv --group-directories-first --color "$@")"
else else
ll_output="$(CLICOLOR_FORCE=1 ls -l -G "$@")" local ll_output="$(CLICOLOR_FORCE=1 ls -l -G "$@")"
fi fi
# Parse path from args # Parse path from args
@@ -127,8 +125,8 @@ function ls_with_file_shortcuts {
fi fi
# Use ruby to inject numbers into ls output # Use ruby to inject numbers into ls output
ruby -e "$( cat <<EOF echo "$ll_output" | ruby -e "$( cat <<EOF
output = "$ll_output" output = STDIN.read
e = 1 e = 1
re = /^(([^ ]* +){8})/ re = /^(([^ ]* +){8})/
output.lines.each do |line| output.lines.each do |line|