From f2b32d25177be465c7209072eb93ae14fc16dfa3 Mon Sep 17 00:00:00 2001 From: Tslil Clingman Date: Fri, 9 Aug 2013 14:03:45 +0200 Subject: The vcs script I use for my PS1 and some minor changes --- ce | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100755 ce (limited to 'ce') diff --git a/ce b/ce new file mode 100755 index 0000000..982e885 --- /dev/null +++ b/ce @@ -0,0 +1,13 @@ +# Smart directory changer using the power of grep ;) +# source in a function j() { cd `d $*`} or some such +#!/bin/bash +[ "$1" = "$HOME" ] && echo $HOME && exit +fl="$HOME/.local/share/dir_lst";[ ! -f "$fl" ] && touch "$fl" +[ "$2" = "!" ] && echo "$1" && exit || \ +ln=`grep -n "$1" "$fl" | head -n 1 | cut -d : -f 1` +if [ ! "$1" = "" ]; then if [ ! "$ln" = "" ]; then +echo -e "$ln m0\n1p\nw"|ed -s "$fl"||echo \?; else +l=$1; while [ ! -d "$l" ]; do echo \?; read l; done; +l=`echo "$l" | sed "s|^[^/]|$PWD/&|"`; +echo -e "0i\n$l\n.\n1p\nw" | ed -s "$fl"; sed -i '43,$d' "$fl" +fi; else echo -e "2 m0\n1p\nw" | ed -s "$fl"; fi; -- cgit v1.2.3