Use shell parameter expansion to strip the leading (w): and (i) Signed-off-by: Bert Wesarg <bert.wesarg@xxxxxxxxxxxxxx> --- No need to use wildcards, we know exactly what we want to strip. tg.sh | 8 +++----- 1 files changed, 3 insertions(+), 5 deletions(-) diff --git a/tg.sh b/tg.sh index 9d08d63..0e72865 100644 tg.sh --- a/tg.sh +++ b/tg.sh @@ -25,17 +25,15 @@ cat_file() arg="$1" case "$arg" in '(w):'*) - arg=$(echo "$arg" | tail --bytes=+5) - cat "$arg" - return + cat "${arg#(w):}" ;; '(i):'*) # ':file' means cat from index - arg=$(echo "$arg" | tail --bytes=+5) - git cat-file blob ":$arg" + git cat-file blob "${arg#(i)}" ;; *) git cat-file blob "$arg" + ;; esac } -- 1.7.1.1067.g5aeb7 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html