Chạy lệnh trong phiên tmux tách rời


24

Điều này có thể đơn giản, nhưng tôi thực sự không thể tìm ra cách bạn làm điều đó. Tôi đã đọc các trang người đàn ông và googled mà không có kết quả.

Vấn đề: Làm thế nào để tôi chạy một lệnh trong cửa sổ tmux tách rời?

Ví dụ: Tôi muốn cửa sổ tách rời 'foo' chạy 'ls', nhưng tôi muốn làm điều đó từ một thiết bị đầu cuối khác.

Tôi đã thử những thứ như: 'tmux -t foo ls' mà không có kết quả.

Câu trả lời:


39

Lệnh là send. sendlà một chuỗi chính, vì vậy hãy đối xử với nó một cách phù hợp (ví dụ như bạn có thể muốn ENTER). Mục tiêu được chỉ định với -t. Bạn có thể muốn foo.0 hoặc foo.1 tùy thuộc vào khung bạn muốn nhấn.

tmux send -t foo.0 ls ENTER

sendlà viết tắt của send-keys, nằm trong các trang man, nhưng có lẽ hơi khó tìm trong dặm văn bản đó.


Câu trả lời chính xác. Rất nhiều thông tin và làm việc một sự quyến rũ. Cảm ơn!
Accatyyc

Giải pháp hoành tráng nhất cho vấn đề này! Cảm ơn rất nhiều!
3bdalla

2
Lưu ý rằng để nhắm mục tiêu một cửa sổ cụ thể trong một phiên cụ thể, bạn tách chúng bằng dấu hai chấm =>tmux send-keys -t foosession:foo.0 ls ENTER
nickspoon 17/03/2017

Nếu bạn muốn gửi khoảng trắng giữa các từ, bạn nên bao quanh lệnh bằng hai dấu nháy đơn. Lệnh ENTER vẫn nên ở bên ngoài. Điều này hoạt động với tôi trên UBUNTU 16.04: tmux send -t session_name 'echo durp'ENTER
TrollAxeThrower
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.