如何在Linux系統下流暢切換不同的應用
透過進程的前後台切換方式實現不同應用的切換。
背景:linux啟動一個程式後,切換到背景執行,想繼續在linux操作。
在Linux中,你可以使用以下幾種方法使一個程式在後台啟動並退出,但仍然保持其進程運行:
#一、Linux啟動一個程式在背景執行
#1. 使用nohup
和&
:
$ nohup your_program &
使用nohup
指令可以讓程式忽略掛斷訊號(SIGHUP),這樣即使你退出了終端,程式也會繼續運作。 &
符號使程式在背景運行。
2. 使用ctrl Z
:
#如果你已經在前台啟動了程序,可以使用ctrl z
命令將其移到後台:
$ ./your_program# 运行在前台 $ 按 Ctrl + Z# 将程序暂停,并将其移到后台 $ bg#在后台继续运行程序 $ disown -h# 使程序在你退出终端时仍然运行
3.使用screen
:
#screen
是一個在UNIX和Linux系統上運行的終端復用器,它允許使用者在同一台機器上的一個實體終端上啟動多個虛擬終端。
透過建立一個新的會話,你可以在其中執行程序,並且即使退出終端,該會話仍將保持活動狀態。隨後,你可以重新連線到會話來檢視和控製程式的運作。
screen的功能
screen的功能大致有三個:
會話復原
:只要Screen本身沒有終止,在其內部執行的會話都可以恢復。這一點對於遠端登入的使用者特別有用——即使網路連線中斷,使用者也不會失去對已開啟的命令列會話的控制。只要再次登入主機上執行screen -r就可以恢復會話的運作。同樣在暫時離開的時候,也可以執行分離指令detach,在確保裡面的程式正常運作的情況下讓Screen掛起(切換到後台)。這一點和圖形介面下的VNC很相似。多重視窗
:在Screen環境下,所有的會話都獨立的運行,並擁有各自的編號、輸入、輸出和視窗快取。使用者可以透過快捷鍵在不同的視窗下切換,並且可以自由的重定向各個視窗的輸入和輸出。會話共用
:Screen可以讓一個或多個使用者從不同終端多次登入一個會話,並共用會話的所有特性(例如可以看到完全相同的輸出)。它同時提供了視窗存取權限的機制,可以對視窗進行密碼保護。
如何使用screen
:安裝 sudo apt install screen
3.1 建立會話
$ screen -S session_name your_program
3.2 若要重新連線到此會話:
$ screen -r session_name
3.3 中途退出會話,但程式繼續運行:
如果你想從 screen
會話中退出,但不終止正在執行的程序,你可以按下 Ctrl
A
#,然後按下 # D
。
這將會從 screen
會話中分離,但程式仍在背景執行。
範例:使用secreen開啟多個會話在會話中執行程式。
每個會話相當於一個邏輯終端,可以退出會話,讓程式仍然運作。
$ screen -S appDemo_session ./appDemo.lua # 开启新的会话,并执行appDemo脚本程序 > help Available commands: 1. show 2. exit 3. help 4. run > # 按ctrl+AD 退出会话 [detached from 1546455.appDemo_session] $ screen -r appDemo_session [detached from 1546455.appDemo_session] $ $ $ screen -ls# 查看所有会话 There is a screen on: 1546455.appDemo_session (2024年01月24日 10时01分53秒) (Detached) 1 Socket in /run/screen/S-zsh. $
3.4 結束一個 screen
會話:
如果你想結束一個 screen
會話並停止其中的程序,你可以先使用 screen -r [會話名稱或ID]
重新連接到該會話,然後按下Ctrl
C
來終止程式。
接著,你可以用 exit
或按 Ctrl
D
來結束該 screen
會話。
$ screen -S appDemo_session ./appDemo.lua -------------以下在在会话中的逻辑终端显示,退出后会消失 > help Available commands: 1. show 2. exit 3. help 4. run > exit exitCLI ------------- [screen is terminating] $
3.5 建立多個視窗:
在同一個 screen
會話中,你可以使用 Ctrl
A
然後再按 #C
來建立一個新的視窗。
每個視窗可以有自己的命令列歷史。要切換窗口,只需按 Ctrl
A
然後按 N
(下一個)或 P
(上一個)。
要關閉窗口,只要按 Ctrl
A
然後按 K
,然後選擇要關閉的視窗。
3.6 命名視窗:
你可以為視窗命名以方便識別。只要按 Ctrl
A
然後按 A
(重新命名)。輸入新名稱並按回車。
3.7 查看所有窗口,
可以按下Ctrl a
,然後按下w
鍵。這將顯示目前screen
會話中的所有視窗列表,包括視窗的編號和名稱。
$ screen -S appDemo_session ./appDemo.lua -------------以下在在会话中的逻辑终端显示,退出后会消失 > help Available commands: 1. show 2. exit 3. help 4. run > $ ls appDemo.lua # 按ctrl+A 然后按K,输入y表示结束当前窗口 Really kill this window [y/n]
在一個會話中建立多個視窗
$ ls appDemo.lua # 按三次ctrl+a,然后按c,创建三个各自独立的窗口,每个窗口有自己的命令行历史 # 然后按 ctrl+a,然后按w查看所有窗口 0$ appDemo.lua1$ bash2-$ bash3*$ bash # 现在相当于一个会话appDemo_session中有四个窗口,需要在四个窗口都exit才能退出该会话
二、ctrl+Z停止了进程之后,怎么再进入该程序?
在Unix和Linux系统中,当你使用Ctrl+Z
将一个程序暂停并放到后台时,该程序实际上是被挂起(暂停)了。
为了再次运行这个程序,你可以使用以下方法:
bg
命令可以将挂起的程序放到后台继续运行。bg
fg
命令。fg %1
其中%1
是你想要移到前台的挂起程序的编号。你可以使用jobs
命令查看挂起的程序的编号。
3. jobs:
使用jobs
命令可以列出当前挂起的程序。这些程序的编号可以帮助你确定要使用fg
或bg
命令时应该使用的编号。
jobs -l# 列出所有挂起的程序及其PID
kill
命令。但是,首先确保你真的想要结束它。kill %1
请注意,上述方法主要适用于shell环境中。如果你在图形界面中(如使用X Window System)运行程序,那么你可能需要使用不同的方法来控制程序的运行。
三、综合example示范
$ ./student ===== 学生信息管理系统 ===== 1. 录入学生信息 2. 显示学生信息 3. 查询学生信息 4. 修改学生信息 5. 删除学生信息 6. 退出 请选择操作: ^Z [1]+已停止 ./student $ bg [1]+ ./student & [1]+已停止 ./student $ jobs -l [1]+ 1545288 停止 (tty 输入) ./student $ ./stu11 Student Information Management System 1. Add Student 2. Display Students 3. Search Student 4. Delete Student 5. Exit Enter your choice: ^Z [2]+已停止 ./stu11 $ jobs -l [1]- 1545288 停止 (tty 输入) ./student [2]+ 1545290 停止./stu11 $
$ ./appDemo.lua > help Available commands: 1. show 2. exit 3. help 4. run > ^Z [2]+已停止 ./appDemo.lua $ jobs -l [1]- 1545480 停止./stu11 [2]+ 1545484 停止./appDemo.lua $ bg [2]+ ./appDemo.lua & $ fg %2 ./appDemo.lua Unknown command. Type 'help' for available commands. > help Available commands: 1. show 2. exit 3. help 4. run > ^Z [2]+已停止 ./appDemo.lua
以上是如何在Linux系統下流暢切換不同的應用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

VS Code 系統要求:操作系統:Windows 10 及以上、macOS 10.12 及以上、Linux 發行版處理器:最低 1.6 GHz,推薦 2.0 GHz 及以上內存:最低 512 MB,推薦 4 GB 及以上存儲空間:最低 250 MB,推薦 1 GB 及以上其他要求:穩定網絡連接,Xorg/Wayland(Linux)

Linux系統的五個基本組件是:1.內核,2.系統庫,3.系統實用程序,4.圖形用戶界面,5.應用程序。內核管理硬件資源,系統庫提供預編譯函數,系統實用程序用於系統管理,GUI提供可視化交互,應用程序利用這些組件實現功能。

雖然 Notepad 無法直接運行 Java 代碼,但可以通過借助其他工具實現:使用命令行編譯器 (javac) 編譯代碼,生成字節碼文件 (filename.class)。使用 Java 解釋器 (java) 解釋字節碼,執行代碼並輸出結果。

VS Code擴展安裝失敗的原因可能包括:網絡不穩定、權限不足、系統兼容性問題、VS Code版本過舊、殺毒軟件或防火牆干擾。通過檢查網絡連接、權限、日誌文件、更新VS Code、禁用安全軟件以及重啟VS Code或計算機,可以逐步排查和解決問題。

vscode 內置終端是一個開發工具,允許在編輯器內運行命令和腳本,以簡化開發流程。如何使用 vscode 終端:通過快捷鍵 (Ctrl/Cmd ) 打開終端。輸入命令或運行腳本。使用熱鍵 (如 Ctrl L 清除終端)。更改工作目錄 (如 cd 命令)。高級功能包括調試模式、代碼片段自動補全和交互式命令歷史。

要查看 Git 倉庫地址,請執行以下步驟:1. 打開命令行並導航到倉庫目錄;2. 運行 "git remote -v" 命令;3. 查看輸出中的倉庫名稱及其相應的地址。

在 Visual Studio Code(VSCode)中編寫代碼簡單易行,只需安裝 VSCode、創建項目、選擇語言、創建文件、編寫代碼、保存並運行即可。 VSCode 的優點包括跨平台、免費開源、強大功能、擴展豐富,以及輕量快速。

VS Code 可以在 Mac 上使用。它具有強大的擴展功能、Git 集成、終端和調試器,同時還提供了豐富的設置選項。但是,對於特別大型項目或專業性較強的開發,VS Code 可能會有性能或功能限制。
