小编tub*_*bos的帖子

将命令发送到 tmux 中的窗口

我想在 tmux 中运行 minecraft 服务器并从 bash 脚本向服务器窗口发送命令。

下面是我的脚本:

#!/bin/bash
echo "Starting vanilla server..."
sleep 2
# Start a new session with name MC
tmux new-session -d -s MC

# Start minecraft in a new window named UHC
tmux new-window -t MC:1 -n 'UHC' 'java -Xms512M -Xmx1G -jar Minecraft.jar nogui'

# And attach to it
tmux a

# Wait 10 seconds
sleep 10

# Run a command
tmux send-keys -t MC:1 'worldborder get' Enter
Run Code Online (Sandbox Code Playgroud)

服务器启动但未发送命令。我究竟做错了什么?

tmux

6
推荐指数
1
解决办法
4714
查看次数

从带有变量的文件中删除前 n 行

下面的命令用于删除前 3 行:

sed -i -e 1,3d t.txt
Run Code Online (Sandbox Code Playgroud)

所以我尝试用脚本中的变量替换 3,如下所示

NrLines=$(wc -l t.txt)
sed -i -e 1,"$NrLines{d}" t.txt
Run Code Online (Sandbox Code Playgroud)

并得到以下错误:

sed: -e expression #1, char 13: unexpected `}'
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

sed shell-script

2
推荐指数
1
解决办法
1968
查看次数

标签 统计

sed ×1

shell-script ×1

tmux ×1