我正在尝试创建脚本以在Rails项目中打开一个新标签,并在该标签内运行rails s
,以启动服务器。
我的命令:
xfce4-terminal --tab --title="rails server" --working-directory="Documents/projects/rails_blog" --command="bash -c 'rails s';bash"
新标签页将在正确的目录中打开。
但我总是会收到此错误:
bash: rails: command not found
我认为rails s
在打开新标签页之前正在运行
或--command
标签只需要bash命令。我不知道
那是为什么?我该如何解决呢?
我已经尝试了以下所有答案:
from superuser
stackoverflow - Open a new tab in gnome-terminal using command line
from stackexchange
from ask ubuntu - Open Terminal with multiple tabs and execute application
from ask ubuntu - How to open several Terminal Tabs in different folders (working directories)?
答案 0 :(得分:0)
为此,我使用tmuxinator。您可以将其放入控制器中,然后运行tmuxinator start project
,它将为您在tmux中启动会话。
# ~/.tmuxinator/project.yml
name: project
root: ~/projects/some_path
windows:
- server: bundle && bundle exec rake db:migrate && rails s
答案 1 :(得分:0)
以下技术在较新的gnome-terminal上效果很好。
(1)这将打开一个新的终端窗口并执行“ ls” 并使终端窗口保持打开状态
gnome-terminal --title=newWindow \\
-- bash -c "ls; bash"
(2)这将在当前gnome终端内打开一个新选项卡 并在该标签中执行“ ls”。
gnome-terminal --tab --title=newTab \\
-- bash -c "ls ;bash"
以上技术适用于 使用VTE 0.52.2 + GNUTLS -PCRE2的GNOME终端3.28.2 请注意,旧的gnome-terminal选项-e --command 和-x在将来的版本中已弃用。
在gnome-terminal之后执行命令的首选方式 打开是要有命令后执行 最后一个空-选项。在上面的示例中,我们执行bash 命令,而该命令又需要在该shell中执行的一组命令。第一个选项需要尾随bash,否则窗口/选项卡将关闭。
希望这会有所帮助。