我已经tmux 1.8
在我的计算机上安装了,如果我在命令行上使用命令行调用它,它就可以正常工作tmux
。
但是,当我尝试运行时tmux source-file <any-file>
,总是收到错误消息failed to connect to server
并且tmux
无法启动。
我开始尝试获取文件这里,但在调试过程中,我能够使用完全空的文件重现该问题。
这是我的.tmux.conf
:
set-window-option -g mode-keys vi
unbind C-b
set -g prefix C-a
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
bind -t vi-copy Enter begin-selection
我需要做些什么特别的事情才能tmux 1.8
正确制作源文件?
答案1
听起来您没有运行服务器。只有某些命令会自动启动服务器(new-session
、attach-session
和start-server
);source-file
不是这些命令之一。
您可以start-server
在同一tmux
命令中包含一个命令来明确启动服务器:
tmux start-server \; source some-file
注意:tmux当没有会话时,服务器将自动退出,因此除非您创建会话(在~/.tmux.conf
、或中some-file
,或通过命令new-session
中包含的其他命令tmux
),否则服务器将在上述tmux
命令完成后立即退出。
或者,在运行tmux source …
命令之前,您可以启动一个占位符会话,该会话仅用于保持服务器运行:
tmux new-session -ds placeholder 2>/dev/null
⋮
tmux source some-file
答案2
目前仍不清楚错误是什么,但我确实找到了有效的解决方法。
假设我的<any-file>
上面有以下几行:
Command1
Command2
Command3
我的解决方法是编写一个脚本:
#!/bin/bash
tmux Command1
tmux Command2
tmux Command3