这是我写的一个小shell脚本。
x-terminal-emulator -e "optirun yarpserver" &
sleep 6
x-terminal-emulator -e "optirun iCub_SIM" &
sleep 60
x-terminal-emulator -e "optirun simCartesianControl" &
sleep 30
x-terminal-emulator -e "optirun iKinCartesianSolver --context simCartesianControl/conf --part left_arm" &
这样做,为每个程序打开一个新终端。我想要做的是打开新的终端选项卡而不是终端。我应该怎么做呢?
答案 0 :(得分:0)
我认为您最好的选择是使用 tmux 来完成这项工作。这里只是一个简单的例子,并逐步解释它。在这里,我只使用垂直分割,这可能会令您感到困惑,您应该阅读tmux联机帮助页以了解如何选择窗格。
tmux new-session -d -s foo tmux send-keys -t foo 'optirun yarpserver' Enter tmux split-window -v -t foo tmux send-keys -t foo 'optirun iCub_SIM' Enter tmux split-window -v -t foo tmux send-keys -t foo 'optirun simCartesianControl' Enter tmux split-window -v -t foo tmux send-keys -t foo 'optirun iKinCartesianSolver --context simCartesianControl/conf --part left_arm' Enter
希望这会对你有所帮助。
答案 1 :(得分:0)
这个帖子真的很老但是如果有人来这里,我会留下一个我创建的bash脚本来启动多个标签来运行不同的命令:
#!/bin/bash
# Array of commands to run in different tabs
commands=(
'tail -f /var/log/apache2/access.log'
'tail -f /var/log/apache2/error.log'
'tail -f /usr/local/var/postgres/server.log'
)
# Build final command with all the tabs to launch
set finalCommand=""
for (( i = 0; i < ${#commands[@]}; i++ )); do
export finalCommand+="--tab -e 'bash -c \"${commands[$i]}\"' "
done
# Run the final command
eval "gnome-terminal "$finalCommand
只需在数组中添加命令并执行。
来源:http://joaoperibeiro.com/command-line-script-to-launch-multiple-tabs/