Jawaban:
tmux \
new-session 'compass watch /path/to/project1/compass/' \; \
split-window 'compass watch /path/to/project2/compass/' \; \
detach-client
The new-session
perintah (yang menciptakan baru tmux
sesi) dan split-window
perintah (yang membagi jendela saat menjadi dua panel) di tmux
mengambil shell perintah opsional untuk menjalankan. The detach-client
tidak jelas di akhir.
Jika Anda ingin pemisahan horizontal (dua panel berdampingan), gunakan split-window -h
perintah di atas.
Saat mengirim beberapa tmux
perintah ke tmux
Anda harus memisahkannya ;
. The ;
kebutuhan untuk dilindungi dari shell dengan mengutip / melarikan diri itu ( ';'
, ";"
atau \;
), untuk menghentikan shell menginterpretasikannya sebagai akhir dari tmux
perintah.
Saya telah membagi semuanya menjadi beberapa baris terpisah untuk dibaca. Jika Anda melakukan ini dalam skrip (yang saya sarankan), pastikan tidak ada setelah final \
pada setiap baris.
Pasang kembali ke sesi dengan tmux a
, tmux attach
atau tmux attach-session
(ini semua setara).
The tmux
sesi akan berakhir setelah kedua perintah telah selesai mengeksekusi.
Ini tidak berhasil untuk saya (saya mencoba melakukan sesuatu seperti 'ls -la'). Apa yang dilakukan adalah:
tmux new-session -d bash
tmux split-window -h bash
#sends keys to first and second terminals
tmux send -t 0:0.0 "<my-first-command>" C-m
tmux send -t 0:0.1 "<my-second-command>" C-m
tmux -2 attach-session -d
Ini memungkinkan saya untuk menjalankan hal-hal yang sangat umum dan meskipun terlihat jelek, ini cukup fungsional.
Hanya meninggalkannya di sini kalau-kalau orang lain mencari hal yang sama.