我在不同的 tmux 会话上运行多个专用服务器。我必须更改端口并且必须在所有 tmux 会话中编写命令。命令是:config['Port'] = 12345
, 12345 是端口。我尝试编写一个脚本,该脚本将接受我的输入并使用我输入到所有不同 tmux 会话的代码键入整个代码,但它不起作用。会话的名称是43210
。
#!/bin/bash
read -p '43210: ' avar
tmux attach-session -t 43210 "config['Port'] = ${avar}"
但它永远不会起作用并显示:
usage: attach-session [-dr] [-t target-session]
使用双引号来扩展
bash
shell 中的变量。即使您在变量中存储了一个值,您所做的也会avar
作为文字字符串传递给。tmux attach-session
由于单引号不会扩展 shell 变量,因此您需要$
在变量名之前添加前缀 a 并用双引号将其括起来。将您的脚本更改为类似,