# Created on savesnippets.com ยท https://savesnippets.com/DkL3qWakW4hCNJ # Source every .sh file in ~/.bashrc.d (alphabetical order) if [[ -d "$HOME/.bashrc.d" ]]; then for f in "$HOME/.bashrc.d"/*.sh; do [[ -f "$f" ]] && source "$f" done fi # Same, but only readable files (defensive against broken permissions) for f in "$HOME/.bashrc.d"/*.sh; do [[ -r "$f" ]] && . "$f" done # Source ALL the files but log which ones loaded (for debugging slow shell startup) for f in "$HOME/.bashrc.d"/*.sh; do [[ -r "$f" ]] || continue t0=$EPOCHREALTIME . "$f" printf '%6.0f ms %s\n' "$(echo "($EPOCHREALTIME - $t0) * 1000" | bc)" "$f" done >&2