- Module
- server
- Declared in
- Server
- Package
- libtmux
- Source
- crates/libtmux/src/server.rs
- Other languages
- PythonTypeScriptGoJava.NETC++ Swift
-
Run a shell command through tmux and collect its output.
The command runs in tmux's own environment, not the caller's. Output lines are
TmuxTextbecause a shell can emit any bytes.Errors
Returns an error when tmux refuses the command.
Also refuses outright on tmux 3.3, 3.3a, and 3.4, with
Error::CapabilityDefective. Those releases sendrun-shelloutput into a pane's copy-mode buffer instead of to the client, and still exit zero, so the command appears to have produced nothing. Reporting an empty listing there would be a wrong answer the caller could not detect. 3.2a and 3.5 onwards are unaffected.Cancel safety
The effect may have happened, and may still be happening. The shell command runs under the tmux server, not this dispatch, so a dropped call stops waiting for it without stopping it, and its output is lost.
In other ports Run a shell command through tmux
- Python
libtmux.Server.run_shell - TypeScript
server.Server.runShell - Go
tmux.Server.RunShell - Java
io.github.libtmux.Server.Server.runShell - .NET
LibTmux.Server.RunShellAsync - C++
libtmux::Server::run_shell - Swift
Server.run(_:in:)types a command into a pane rather than running it on the host
- Python
0 declared, 0 inherited