ref: 2d7d9916d34ceeaef920d1f1e00aed6d215d7ca1
dir: /man/1/pin/
.TH PIN 1 .SH NAME pin \- pinned I/O shell .SH SYNOPSIS pin [ .B -nw ] [ .B -m .I mtpt ] [ .I name ] [ .I command ] .SH DESCRIPTION .PP .B Pin manages persistent sessions for long-running commands. It is used to create, join, and control sessions for programs connected to a named .IR mq (4) stream group. .PP If a session .I name exists, then .B pin mysession will join the named session, otherwise a new session will be created. The command run in the session is .IR command , or .B rc -i if command is not given. .PP The .B -n flag supresses joining of existing session. .PP The -w flag writes the .I command string, or standard input if not given, to the input stream of an existing session. .PP Under the hood, .I pin expects an .IR mq (4) instance mounted on .BR /n/pin or .I mtpt in case the .B -m option is given. If no such mount is present, .I pin mounts the channel posted on .BR /srv/pin-$user , creating it if needed. .SH EXAMPLES .PP Pin an .BR rc (1) shell, or join an already existing session: .EX pin myshell .EE .PP Pin some other program: .EX pin remote rcpu -h remote .EE .PP Send input to a pinned program: .EX pin -w myshell echo 'hi, shell' .EE or: .EX echo 'echo hi, shell' | pin -w myshell .EE .SH SEE ALSO .IR mq (4) .SH SOURCE .EX git://src.a-b.xyz/mq .EE .SH BUGS