/projects-basher

Creates aliases for all your projects and an each-project function to run commands over all projects or a subset.

Primary LanguageShell

Projects Bash(er)

Creates aliases for all your projects and an each-project function to run one or more commands over all projects or a subset.

Installation

  • set BASHER_LIST as a comma joined list of directory,alias pairs
  • set BASHER_ROOT
  • source init.bash
# in ~/.bashrc
BASHER_ROOT='~/projects'
BASHER_LIST='admin,ad superapp,sa littleapp,la'
. ~/.bash.d/projects-basher/init.bash

How to use

Aliases will be created for each directory/alias pair in the root directory.

~ $ ad
~/projects/admin $

The each-project function can be used to run commands over all the projects or a subset.
A separate history will be kept for both the project subsets and the commands.
Type “quit”, “q”, ctrl-c, or ctrl-d to exit.

~ $ each-project 
For each project alias (default:  ad sa la ):
> ad sa
run command: 
> ls
/Users/joe/projects/admin [ad]
File1		File2

/Users/joe/projects/superapp [sa]
File3		File4

run command: 
> q