diff --git a/tmux-oneshot.sh b/tmux-oneshot.sh index c1d51cc..5c86d64 100644 --- a/tmux-oneshot.sh +++ b/tmux-oneshot.sh @@ -54,7 +54,11 @@ fi # Use session name from config, or first word of command if not set if [ -z "$SESSION" ]; then - SESSION=$(echo "$COMMAND" | awk '{print $1}') + if [ ${#COMMANDS[@]} -gt 0 ]; then + SESSION=$(echo "${COMMANDS[0]}" | awk '{print $1}') + else + SESSION=$(echo "$COMMAND" | awk '{print $1}') + fi fi # Create session if missing @@ -70,6 +74,8 @@ if [ ${#COMMANDS[@]} -gt 0 ]; then echo "Running multiple commands: ${COMMANDS[*]}" for cmd in "${COMMANDS[@]}"; do echo "Running: $cmd" + echo "DEBUG: Command length: ${#cmd}" + echo "DEBUG: Command bytes: $(printf '%s' "$cmd" | od -c)" printf '%s\n' "$cmd" | tmux load-buffer - tmux paste-buffer -t $SESSION tmux send-keys -t $SESSION C-m @@ -77,6 +83,8 @@ if [ ${#COMMANDS[@]} -gt 0 ]; then done else echo "Running command: $COMMAND" + echo "DEBUG: Command length: ${#COMMAND}" + echo "DEBUG: Command bytes: $(printf '%s' "$COMMAND" | od -c)" printf '%s\n' "$COMMAND" | tmux load-buffer - tmux paste-buffer -t $SESSION tmux send-keys -t $SESSION C-m