Is it possible to have a bash script (like a
.bash_profile, basically) that is executed only upon cd’ing into a specific folder?
Add this to your
.bashrc is located in current working directory:
PROMPT_COMMAND='if [[ "$bashrc" != "$PWD" && "$PWD" != "$HOME" && -e .bashrc ]]; then bashrc="$PWD"; . .bashrc; fi'
Depending on your exact use case and constraints, ondir may suit your needs:
ondir is a small program to automate tasks specific to certain directories. It works by executing scripts in directories when you enter and leave them.
It does this by using a central
~/.ondirrc file for per-dir configuration. In contrast, the clever
PROMPT_COMMAND setup that @Cyrus suggested allows for the config to reside in the individual directories themselves. Each approach is valid; it depends on the constraints and data you're dealing with.
Disclaimer: I've never used
ondir personally. I came across it while looking for an automatic way to handle git user config per-dir. In that case,
ondir didn't fit my needs—I ended up using a git alias passing
--config options to