30 lines
491 B
Bash
Executable File
30 lines
491 B
Bash
Executable File
#!/bin/sh
|
|
|
|
set -eux
|
|
|
|
|
|
random() {
|
|
seq 0 65535 | shuf | head -n 1
|
|
}
|
|
|
|
readonly SESSION_PREFIX="sandbox"
|
|
|
|
|
|
RND="$(random)"
|
|
SESSION="${SESSION_PREFIX}${RND}"
|
|
|
|
while tmux has-session -t "${SESSION}" 2>/dev/null
|
|
do
|
|
RND="$(random)"
|
|
SESSION="${SESSION_PREFIX}${RND}"
|
|
done
|
|
|
|
readonly RND
|
|
readonly SESSION
|
|
|
|
|
|
WORKING_PROJECT="$(mktemp -td "${SESSION_PREFIX}${RND}.XXXX")"
|
|
readonly WORKING_PROJECT
|
|
|
|
tmux new-session -s "${SESSION}" -d -c "${WORKING_PROJECT}"
|
|
tmux switch-client -t "${SESSION}" |