![](/img/trans.png)
[英]How to use same terminal window after using “rails server” command?
[英]If I only can type command lines in other Terminal after execute rails server?
當我跑步時:
$ rails server
它來了:
=> Booting Puma
=> Rails 5.0.1 application starting in development on http://localhost:3000
=> Run `rails server -h` for more startup options
Puma starting in single mode...
* Version 3.6.2 (ruby 2.3.0-p0), codename: Sleepy Sunday Serenity
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://localhost:3000
Use Ctrl-C to stop
因此,我無法在此終端中鍵入命令,因此是否必須通過Command + N打開另一個終端以鍵入命令?
嘗試
rails server -d
它將獨立運行Rails服務器。
如果使用Mac,只需鍵入command + t打開新的終端選項卡,然后按Ctrl + C殺死服務器,您也可以使用rails控制台( rails c
來運行)。
要在bash中在后台啟動任何作業,請在其上附加&
rails server &
您可以使用fg
將其放到前台。
要將任何作業放回后台,請使用Ctrl + Z ,然后使用bg
將其推送到后台。
注意:所有stdout / stderr將繼續寫入
bg
上的終端
正如@Sairam對原始問題的評論所指出的(他也要求我創建答案):
對於大多數(如果沒有)Linux / Unix,這些解釋應該是正確的。
如果將&
附加到命令,它將直接發送到后台:
rails server &
如果輸入
jobs
您現在應該看到正在后台運行作業。
要使此命令“返回”(如果它沒有崩潰,無論如何它仍在運行),請調用
fg
。 要暫停並暫時停止執行此命令,請使用Ctrl + Z。 您現在回到了外殼中。 jobs
將向您顯示發生了什么(作業現在“已停止”)。
因此,您有一個“已停止”的工作並且在終端中。 要將這項工作推到后台(並使其繼續執行),請致電
bg
(用於“背景” ...)。
現在,如果您想找回它,請致電(獲取) fg
,依此類推...
請注意,使用這種方法(例如,相對於rails server -d
),您將擁有更多/更輕松的控制權,並且您的命令將在終端會話中被殺死。 因此,當您關閉終端時,rails服務器也將關閉。 如果您不想這樣做,通常會使用screen
(或其他替代方法)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.