в общем, пробую изобразить на баше подобие byobu для тмукса.
Конкретно, того функционала, когда если при нескольких сессий запускаешь тмукс, он предлагает или приаттачиться к уже существующей, либо создать новую.
Решил запихнуть списко активных сессий в массив
Родил такую конструкцию
declare -a activeSessionsArray
function loadActiveSessions( ) {
local activeSessionsStr="$(tmux list-sessions)"
local activeSessionNumber=0
for activeSession in "$(echo \"${activeSessionsStr}\")" ; do
activeSessionsArray[$activeSessionNumber]="${activeSession}"
((activeSessionNumber += 1)) # increment
done
echo "array[0]: ${activeSessionsArray[0]}"
}
и такая фигня. Как бы я не пытался, весь выхлоп tmux list-sessions или разбивается поп пробелам, либо пишется в одну стоку.
есть вариант использовать
echo $activeSessionsStr |
while read session ; do
...
done
еще вариант - писать во временный файл в /tmp, например, читать его, предварительно поставив $IFS, потом удалять, но мне это как-то не особо нравится.
в общем, мне нужны советы, как это сделать :)
спасибо