Re: Autorun ability on cd?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



On Wed, Aug 05, 2009 at 09:49:04AM -0400, James B. Byrne wrote:
> kluges around this.  I do not wish to change the pwd of the shell, I
> just want some way of testing for a certain file and running a
> specific command if it is found when I enter a working tree. If this
> requires testing every directory that I cd to then I can live with
> that.  If instead one can put a script that runs only when one
> enters certain directories then I can live with that as well.
> 
> Is there any way to do this?

Untested, and it depends very much on your shell, but create a function

  cdr()
  {
    cd $1 || exit
    if [ -x ./.myscript ]
    then
      ./.myscript
    fi
  }

Now if you use "cdr" (for Change Directory & Run) it should do what you
want (runs a file called ".myscript" in the new directory if it exists)


This _might_ work...

  cd()
  {
    command cd $1 || exit
    if [ -x ./.myscript ]
    then
      ./.myscript
    fi
  }

OK, I just tested the later under ksh88 and it worked.  You'd need to
test with bash/ksh93/whatever-your-shell-is

  $ cat x1/.myscript 
  echo hello
  $ cd x1
  hello
  $ mkdir x0
  $ cd x0
  $ cd ..
  hello
  $ 

As you can see, everytime I enter the "x1" directory it runs .myscript

-- 

rgds
Stephen
_______________________________________________
CentOS mailing list
CentOS@xxxxxxxxxx
http://lists.centos.org/mailman/listinfo/centos

[Index of Archives]     [CentOS]     [CentOS Announce]     [CentOS Development]     [CentOS ARM Devel]     [CentOS Docs]     [CentOS Virtualization]     [Carrier Grade Linux]     [Linux Media]     [Asterisk]     [DCCP]     [Netdev]     [Xorg]     [Linux USB]
  Powered by Linux