我创建了一个新的tmux会话,打算使用-s标志来命名它,但是将命令与指定套接字的-S混淆了。我知道会话是活的,因为我在其中启动的进程仍在运行。但是,当我尝试列出正在运行的会话时,它不会出现。我的会话在哪里,我该如何恢复?
答案 0 :(得分:0)
在tmux
选项中-S
表示套接字路径(来自man tmux
):
-S socket-path
Specify a full alternative path to the server socket. If -S is specified, the default
socket directory is not used and any -L flag is ignored.
所以你必须找出运行tmux
的父目录
-S
选项并将此选项传递给tmux
以将其指向
替代套接字路径。例如,你可以找到PID
tmux
进程:
$ ps aux | grep '[t]mux'
ja 15121 0.0 0.0 20252 2236 pts/6 S+ 00:44 0:00 tmux -S new
然后在cwd
中检查此过程/proc
,如下所示:
$ ls -l /proc/15121/cwd
lrwxrwxrwx 1 ja users 0 Aug 19 00:52 /proc/15121/cwd -> /home/ja
然后引用此tmux
会话:
$ tmux -S /home/ja/new ls
0: 1 windows (created Sat Aug 19 00:44:46 2017) [212x65] (attached)