aeris22’s avataraeris22’s Twitter Archive—№ 76,564

        1. Je ne compte même pas le nombre d’absurdité la plus totale dans ce script… github.com/jlipps/tmux-safekill/blob/master/scripts/safekill.sh
      1. …in reply to @aeris22
        On va commencer par le tmux list-panes -a -F "#{pane_id} #{pane_current_command} #{session_name}\n" | grep "$session_name") Par défaut, les session_name sont des entiers… Et ça peut être plus ou moins ce que vous voulez…
    1. …in reply to @aeris22
      J’espère pour vous que vous n’avez pas de processus du nom de votre session… Donc déjà, un grep " $session_name$" aurait été mieux ici. Mais si l’auteur avait lu la doc de tmux, il aurait vu que c’est son propre « -a » d’avant qui fout la merde !
  1. …in reply to @aeris22
    Si on vire le -a et qu’on met un -s, on a de base juste ce qu’il faut pour faire ce qu’on a besoin…
    1. …in reply to @aeris22
      Ensuite, pourquoi s’emmerder avec de la détection de process pour les fermer « correctement » ? Un bon processus sait parfaitement gérer CTRL+C, que ça soit ssh, vim et le reste… Donc toute la plâtré de if ne sert pas à grand chose…
      1. …in reply to @aeris22
        « echo $cmd | xargs tmux send-keys -t "$pane_id" » Ta commande ne fait qu’une seule ligne, donc ton echo | xargs est déjà inutile à lui tout seul… echo | tmux aurait fait le taff. Et si tu avais lu la doc, tu aurais vu que send-keys prend ses commandes en argument directement…
        1. …in reply to @aeris22
          Et donc « tmux send-keys -t "$pane_id" "$cmd" » fait donc très bien le boulot… Et donc TOUT le gros bordel de jonglage avec $IFS et le reste se résume à tmux list-panes -F "#{pane_id}" | xargs -I {} tmux send-keys -t "{}" "C-c" 🤔
          1. …in reply to @aeris22
            Et pourquoi le sleep 0.8 ? 🤔 Pourquoi le double appel à la fonction de kill ? Si tes process n’ont pas répondu au CTLR+C au premier, le second n’aura certainement pas plus de succès…