開機啟動screen並在後台執行其他程式

2021-08-16 18:32:00 字數 1027 閱讀 4589

首先我們需要製作乙個指令碼。在終端下輸入並回車新建指令碼檔案start.sh

touch start.sh

chmod 777 start.sh

然後向rc.local檔案新增啟動**

修改rc.local檔案,在終端輸入並回車:

sudo vi /etc/rc.local
在開啟的文字中找到exit 0,在此之前新增的**在啟動時都會被執行,在exit 0 之前新增一行**:

沒有 exit 0 的話在最後追加上就可以了。

注:pi 是使用者名稱,  如果需要使用root使用者執行指令碼 直接填寫引號內的內容即可。

su pi -c "exec /home/pi/start.sh"
儲存並退出

然後 編輯start.sh

screen_name="my_screen"  

screen -dms $screen_name

現在,我們就已經建立了乙個名為 my_screen 的視窗。然後,我們需要向其傳送具體的命令。我們用如下命令:

cmd="python test.py";  

screen -x -s $screen_name -p 0 -x stuff "$cmd"

screen -x -s $screen_name -p 0 -x stuff '\n'

這樣,我們就向screen傳送了一條python test.py命令了。

以後其他的開機啟動命令都可以放在start.sh中

不過這種方式傳送的命令不能太長,否則會導致指令碼卡住。

如果需要傳送一條很長的命令,或者連續傳送許多條命令,最好單獨寫乙個指令碼,傳送乙個指令碼命令給screen,讓screen執行新的指令碼。

用screen 在後台執行程式

運維工作中經常,需要ssh遠端登入到linux 伺服器,執行一些需要很長時間才能完成的任務,由於很多服務進行了基線調整,經常會出現任務沒有執行完成會話就中斷,任務就會被殺掉,一切半途而廢了,這時,我們可以用screen命令解決這個問題 screen是乙個可以在多個程序之間多路利用乙個物理終端的視窗管...

在後台啟動Redis

2.按 win r 在輸入框中輸入 cmd 3.在cmd中開啟redis所在的資料夾,如下圖 這是我電腦上的 4.執行 redis server service install redis.windows.conf loglevel verbose 命令安裝服務 5.執行 redis server ...

screen的用法 在後台執行互動式程式

sudo apt get install screen screen vim a.txt 直接退出後使用 screen ls 1656.pts 0.ubuntu detached screen r 1656 恢復 熱鍵,同時按下ctrl和a鍵結束後,再按下功能鍵 c a 顯示所有鍵繫結資訊 c a ...