ft24_control/start.bash

59 lines
1.4 KiB
Bash
Raw Normal View History

2023-07-14 15:29:39 +02:00
#!/bin/bash
DCAITI_PATH=.
# Define your windows, working dirs, and commands
declare -a windows=(
"performance"
"base"
"remote_control"
"lidar"
"nav2"
)
declare -a work_dirs=(
$HOME
$DCAITI_PATH
$DCAITI_PATH/src/dcaitirobot/launch
$DCAITI_PATH
$DCAITI_PATH/src/dcaitirobot/launch
#$DCAITI_PATH/src/dcaiti_navigation/launch
)
declare -a commands=(
"htop"
"ros2 launch dcaiti_control launch_robot.py"
"ros2 launch remote_control_launch.py"
"ros2 launch velodyne velodyne-all-nodes-VLP16-launch.py"
"ros2 launch launch_slam.py"
#"ros2 launch start_nav2.py"
)
# Start tmux
tmux start-server
SESSION=dcaiti
# Create a new session without attaching yet
tmux new-session -d -s $SESSION
# Iterate over sessions array and create them
for index in ${!windows[*]}; do
window=${windows[$index]}
work_dir=${work_dirs[$index]}
command=${commands[$index]}
# If it's the first window, rename the existing window, otherwise create a new one
if [ $index -eq 0 ]; then
tmux rename-window -t $SESSION:0 $window
else
tmux new-window -t $SESSION -n $window
fi
# Switch to work_dir and execute the command
tmux send-keys -t $SESSION:$window "cd $work_dir" C-m
tmux send-keys -t $SESSION:$window "$command" C-m
done
# Finally attach to the tmux session
tmux attach-session -t $SESSION