22 lines
621 B
Bash
Executable File
22 lines
621 B
Bash
Executable File
#!/bin/sh
|
|
# Get the current working directories of all running SHELLs.
|
|
|
|
# The `pgrep` line can be replaced with following code block (resulting in two
|
|
# while-loops) if only child processes of certain programs (e.g. terminal and
|
|
# tmux instances) should be matched.
|
|
#
|
|
# pgrep --full "^($TERMINAL|tmux)( |$)" \
|
|
# | cut -d' ' -f1 \
|
|
# | while read -r line; do
|
|
# pgrep -P "$line"
|
|
# done \
|
|
|
|
# NOTE: when using the full path not all shell instances are matched
|
|
pgrep "$(basename $SHELL)" \
|
|
| cut -d' ' -f1 \
|
|
| while read -r line; do
|
|
pwdx "$line" 2>/dev/null
|
|
done \
|
|
| cut -d' ' -f2- \
|
|
| sort -ur
|