我正在尝试采用Alexey Samoshkin 的方法将文本从远程 tmux 会话复制到本地剪贴板。我使用xsel
而不是xclip
,并使用 systemd 用户服务而不是系统一。这是我的工作配置:
/etc/systemd/user/xsel.socket:
[Unit]
Description=xsel network listener socket
[Socket]
ListenStream=54793
Accept=yes
[Install]
WantedBy=sockets.target
/etc/systemd/user/[email protected]:
[Unit]
Description=xsel network listener service
[Service]
Type=simple
ExecStart=/usr/bin/xsel --input --clipboard --nodetach
StandardInput=socket
StandardOutput=socket
xsel 版本 1.2.0
systemd 245(245.6-8-arch)
一切都按预期工作,但只有使用--nodetach
选项。没有这个选项,剪贴板根本不会改变。你能解释一下为什么吗?
答案1
如果服务分离,则它无法stdout
再写入任何内容。因此--nodetach
需要保留stdout
(并能够重定向它)。