diff --git a/.config/shell/functions/cda b/.config/shell/functions/cda index 751734b..3dfe301 100644 --- a/.config/shell/functions/cda +++ b/.config/shell/functions/cda @@ -1,10 +1,10 @@ -#!/bin/bash -# Source this and then run `cda` +#!/bin/sh +# Usage: +# cda -# cd all: opens a new shell in each of the directories below the one you're in, so -# you can execute commands in them until you type 'exit' -# If I use this enough, I may make something that can do more -# Ideas for what it could do in the future: +# cd all: opens a new shell in each of the passed dirs + +# Ideas for improvement: # - somehow record typed commands so they can be automatically repeated like a macro # - maybe get the length of the histfile before and after, executing the last X number of commands # - Maybe just add an argument that takes a command and executes it in all dirs @@ -12,8 +12,11 @@ # that by just writing a for loop) cda() { - for DIR in *; do - (cd "$DIR" && zsh) + for DIR in "$@"; do + echo + echo "$DIR" + (cd "$DIR" && $SHELL) done + echo "$0: done" }