Jalankan perintah dalam sesi tmux terpisah

24

Ini mungkin sederhana, tetapi saya benar-benar tidak tahu bagaimana Anda melakukannya. Saya telah membaca halaman manual dan mencari di Google tanpa hasil.

Masalah: Bagaimana cara menjalankan perintah di jendela tmux terpisah?

Contoh: Saya ingin jendela terpisah saya 'foo' menjalankan 'ls', tetapi saya ingin melakukannya dari terminal lain.

Saya sudah mencoba hal-hal seperti: 'tmux -t foo ls' tanpa hasil.

Accatyyc
sumber

Jawaban:

39

Perintahnya adalah send. sendadalah urutan kunci, jadi perlakukan sesuai (misalnya Anda mungkin ingin ENTER). Target ditentukan dengan -t. Anda mungkin menginginkan foo.0 atau foo.1 tergantung pada panel yang ingin Anda tekan.

tmux send -t foo.0 ls ENTER

sendadalah kependekan dari send-keys, yang terletak di halaman manual, tetapi mungkin agak sulit ditemukan dalam mil teks.

84104
sumber
Jawaban yang bagus Sangat informatif dan bermanfaat. Terima kasih!
Accatyyc
Solusi paling agung untuk masalah ini! Terima kasih banyak!
3bdalla
2
Perhatikan bahwa untuk menargetkan jendela tertentu dalam sesi tertentu, Anda memisahkannya dengan titik dua => tmux send-keys -t foosession:foo.0 ls ENTER
nickspoon
Jika Anda ingin mengirim spasi di antara kata-kata, Anda harus mengelilingi perintah dengan dua tanda kutip. Perintah ENTER masih harus di luar. Ini berlaku untuk saya di UBUNTU 16.04:tmux send -t session_name 'echo durp' ENTER
TrollAxeThrower