導航:首頁 > 程序命令 > shell終端命令

shell終端命令

發布時間:2023-03-30 19:07:39

㈠ shell腳本讓進程在後台運行以及進程後台轉前台

我們計算的程序都是周期很長的,通常要幾個小時甚至一個星期。我們用的環境是用 putty 遠程連接到日本 linux 伺服器。所以使程序在後台跑有以下三個好處:

1:我們這邊是否關機不影響日本那邊的程序運行。(不會像以前那樣,我們這網路一斷開,或一關機,程序就斷掉或找不到數據,跑了幾天的程序只能重頭再來,很是煩惱)

2:不影響計算效率

3:讓程序在後台跑後,不會占據終端,我們可以用終端做別的事情。

方法有很多,這里主要列舉兩種。假如我們有程序 pso.cpp ,通過編譯後產生可執行文件 pso ,我們要使 pso 在 linux 伺服器後台執行。當客戶端關機後重新登入伺服器後繼續查看本來在終端輸出的運行結果。(假設操作都在當前目錄下)

方法1在終端輸入命令

解釋:將 pso 直接放在後台運行,並把終端輸出存放在當前目錄下的 log.file 文件中。

當客戶端關機後重新登陸伺服器後,直接查看 pso.file 文件就可看執行結果(命令:$ cat pso.file )。
方法2在終端輸入命令:

解釋: nohup 就是不掛起的意思,將 pso 直接放在後台運行,並把終端輸出存放在當前

目錄下的 pso.file 文件中。當客戶端關機後重新登陸伺服器後,直接查看 pso.file

文件就可看執行結果(命令: #cat pso.file )。

註:如果要使在前天執行任務放到後台運行,則先要用 ctrl+z 掛起該任務,然後用 bg 使之後台執行。
附:
在 Linux 中,如果要讓進程在後台運行,一般情況下,我們在命令後面加上 & 即可,實際上,這樣是將命令放入到一個作業隊列中了:

對於已經在前台執行的命令,也可以重新放到後台執行,首先按 ctrl+z 暫停已經運行的進程,然後使用 bg 命令將停止的作業放到後台運行:

但是如上方到後台執行的進程,其父進程還是當前終端 shell 的進程,而一旦父進程退出,則會發送 hangup 信號給所有子進程,子進程收到 hangup 以後也會退出。如果我們要在退出 shell 的時候繼續運行進程,則需要使用 nohup 忽略 hangup 信號,或者 setsid 將將父進程設為 init 進程(進程號為 1 )

上面的試驗演示了使用 nohup/setsid 加上 & 使進程在後台運行,同時不受當前 shell 退出的影響。那麼對於已經在後台運行的進程,該怎麼辦呢?可以使用 disown 命令:

另外還有一種方法,即使將進程在一個 subshell 中執行,其實這和 setsid 異曲同工。方法很簡單,將命令用括弧() 括起來即可:

註:本文試驗環境為 Red Hat Enterprise Linux AS release 4 (Nahant Update 5) , shell 為 /bin/bash ,不同的 OS 和 shell 可能命令有些不一樣。例如 AIX 的 ksh ,沒有 disown ,但是可以使用 nohup -p PID 來獲得 disown 同樣的效果。

還有一種更加強大的方式是使用 screen ,首先創建一個斷開模式的虛擬終端,然後用 -r 選項重新連接這個虛擬終端,在其中執行的任何命令,都能達到 nohup 的效果,這在有多個命令需要在後台連續執行的時候比較方便:

㈡ Xshell本地指令大全

很多軟體在使用過程中都有快捷鍵,當然xshell也有,有因為xshell是一款 安全終端模擬軟體 ,所以與普通的軟體有絲絲的區別,它的快捷鍵是以指令形式展現的。

圖1:xshell本地指令表現形式

一般來講,Xshell提示在未連接遠程主機的狀態下出現在終端屏幕上。連接會話後可按「Ctrl+Alt+]」以轉出本地提示。如要返回到遠程主機模式輸入「exit」或按「Ctrl+D」即可。

可使用如下指令:

|

指令

|

說明

|
| --- | --- |
|

help

?

|

在終端窗口顯示指令目錄。

|
|

new

|

打開新建會話屬性對話框。

|
|

open [ session ]

|

已指定「 session 」時連接到相應會話,未指定時打開會話對話框。

|
|

edit [ session ]

|

已指定「 session 」時打開相應會話的會話屬性對話框,未指定時打開默認會話的會話屬性對話框。

|
|

list

|

顯示當前作業directory可使用的會話相關信息和directory目錄。

|
|

cd

|

更改當前作業的directory。

|
|

clear

|

清除畫面、地址欄的歷史記錄、本地Shell命令提示的命令歷史記錄。

|
|

exit

quit

|

退出Xshell會話或返回到遠程主機。

|
|

ssh [ user @] host [ port ]

|

以ssh協議進行連接。

|
|

sftp [ user @] host [ port ]

|

以sftp協議進行連接。

|
|

telnet [ user @] host [ port ]

|

以telnet協議進行連接。

|
|

rlogin [ user @] host [ port ]

|

以rlogin協議進行連接。

|
|

ftp [ user @] host [ port ]

|

以ftp協議進行連接。

|
|

ipconfig

|

執行Windows的ipconfig命令。

|
|

ping host

|

執行Windows的ping命令。

|
|

tracert host

|

顯示至host的數據包路徑。

|
|

netstat

|

執行Windows의netstat命令。

|
|

nslookup

|

執行Windows의 nslookup 命令。

|

㈢ Linux裡面shell窗口命令Ctrl+s命令作用是什麼

在Linux下,CTRL+S組合鍵是進行鎖屏,鍵盤進行的輸入也是存在的,只是沒有顯示

㈣ 超實用的adb與adb shell常用命令匯總

adb(android Debug Bridge),SDK自帶的工具,可實現橋接功能,實現PC和android設備的交互

adb shell:基於Android linux系統操作,放在安卓設備的system/bin目錄下,手機端的命令

一:adb常用命令

1. PC連接android設備

(PC與android設備連接同一個wifi,或處於同一個區域網)

連接:adb connect ip:5555

斷開連接:adb disconnect ip

查看連接設備的信息:adb devices

獲取設備的狀態:adb get-state

2. 重啟adb server

打開adb服務:adb start-service

關閉adb服務:adb kill-service

3. 安裝卸載軟體

安裝:adb install apkpath(某個apk)

adb install -r :強制安裝

卸載: adb uninstall package(可用adb shell pm list packages查看包名)

4. 列印日誌

列印android系統日誌:adb logcat

將日誌列印並保存指定文件夾:adb logcat > /Users/apple/Desktop/log.txt

終止進程:control+C

列印mpsys,mpstate,logcat的輸出,用於分析錯誤:adb bugreport

5. PC與android設備上文件復制

android設備上文件復制到PC上:adb pull

PC上文件推至android設備:adb push 

6.重新掛載system分區為可寫,需要root許可權./system分區默認掛載為只讀,但有些操作比如給android系統添加命令,刪除自帶應用等需對系統進行寫操作,得重新掛載為可寫

adb shell

su

或:adb root

adb remount 重新掛載文件系統,獲得可寫的許可權(默認情況是只有可讀許可權的),使用adb remount 的前提是要有root許可權

7. 刪除系統應用

adb root

adb remount

adb shell

cd system/app

rm *apk

二:adb shell命令

adb shell 進入系統子目錄,exit 退出

1. pm命令

列出系統應用的所有包名:adb shell pm list packages 可用grep來過濾:adb shell pm list packages | grep 關鍵字

清除應用數據與緩存:adb shell pm clear <packagename>

2. am命令

啟動應用:adb shell am start -n com.xxx.xxxxxxx|xxx.Activity(可通過adb shell mpsys activity activities | grep mFocusedActivity查看

強制停止應用:adb shell am force-stop <packagename>

3. input命令

模擬點擊事件,點擊坐標點(x,y):adb shell input tap x y

模擬滑動事件,從(x1,y1)到(x2,y2):adb shell input swipe x1 y1 x2 y2

發送文本內容:adb shell input text

模擬按下home:adb shell input keyevent KRYCODE_HOME

4. screencap命令

截屏:adb shell screencap

5. 查看網路狀態命令

查看當前網路狀態:adb shell netstat

通過配置文件配置和管理網路連接:adb shell netcfg

查看網路信息:ifconfig

測試網路聯網狀態:ping

5.其它相關命令

查看當前終端中進程:adb shell ps

獲取cpu信息:adb shell cat /proc/cpuinfo

查看內存信息:adb shell cat /proc/meminfo

查看屏幕解析度:adb shell wm size

查看設備ip地址:adb shell ifconfig | grep Mask

查看實時資源佔用情況:adb shell top

㈤ shell終端怎麼進入

linux 可以通過vi或vim命令進入shell編程模式,操作步驟如下:

1、首先在linux終端中創建一個shell腳本文件,例如shell.sh:

㈥ 『Linux 干貨』#1 終端與Shell(簡明)

繼 Git 後貴系的另一個暑培項目,講授 Linux 的基本用法,恰好這學期「操作系統」課程實驗需要用到 Linux,而且實驗室的伺服器也需要學習相關用法,故學之。

本文部分內容參考了清華 ZAH 同學的教程,部分參考了 劉遄 老師的《 Linux 就該這么學 》, 菜鳥教程-Linux 。

Linux,全稱 GNU/Linux,是一套免費使用和自由傳播的類 Unix 操作系統。相比於其他系統,Linux 更加穩定且有效率、更加安全、相對不耗資源……以至於幾乎所有 長期穩定運行的網站伺服器 上、在 處理大數據的集群系統 中,以及需要 協同工作的伺服器環境 都採用 Linux 系統。

Linux 嚴格來說是單指操作系統的 內核 ,因操作系統中包含了許多用戶圖形介面和其他實用工具。如今 Linux 常用來指「基於 Linux 的完整操作系統」,內核則改以「Linux 內核」稱之。

一些組織或廠商將 Linux 內核與各種軟體和文檔 包裝 起來,並提供系統安裝界面和系統配置、設定與管理工具,就構成了 Linux 的發行版本。

在學習 Linux 的過程中,有幾個易混淆的概念:

命令行界面(Command-Line Interface,CLI)是在圖形用戶界面得到普及之前使用最為廣泛的用戶界面,它通常不支持滑鼠,用戶通過鍵盤輸入指令,計算機接收到指令後,予以執行。也有人稱之為字元用戶界面(Character User Interface,CUI)。

一般來說,在 伺服器 中較多採用的是 CLI 界面,或許有以下幾點原因:

Shell 是一個用 C 語言編寫的程序,它是用戶使用 Linux 等系統的橋梁,如同「 」一般。它的本質是一個 命令解釋器 ,將用戶輸入的命令(符合 Shell 語法)處理成對應 操作系統的控制命令 ,處理完畢後再將結果反饋給用戶。

不同操作系統下面的 Shell 種類眾多,常見的有:

Ken Thompson 的 sh 是第一種 Unix Shell,本教程關注的是 Bash,也就是 Bourne Again Shell,Bash 也是大多數 Linux 系統默認的 Shell。

終端 (Terminal),是一種用來讓用戶輸入數據至計算機,以及顯示其計算結果的機器。早期的終端通常就是一台 電子打字機 (Teletypewriter, TTY),後來隨著計算機的發展,打字機被鍵盤和顯示器取代,而 GUI 界面也成了主流。

於是,這時候我們就需要一個程序來模擬傳統終端的行為,即 終端模擬器 (Terminal Emulator),當用戶打開終端模擬器時,實際上是進入一個 會話進程 (Session)。終端模擬器有很多,這里舉幾個經典的例子:

在 Linux 系統中打開終端時,會看到一個提示符,通常類似 hewei@hewei-VirtualBox ~$ 。在提示符下,命令會被 Shell 環境 解析並反饋 到終端中。

提示符是 Shell 最主要的 文本介面 。它告訴你,你的主機名是 hewei-VirtualBox ,你現在的身份是 hewei 並且你當前的 工作目錄 (Current working directory)是 ~ (默認在 /home/hewei/ 用戶目錄)。

$ 符號表示您現在的身份不是 root ,輸入如下命令可以暫時切換到 root 許可權:

輸入密碼後,可以看到提示符變成了 root@hewei-VirtualBox:/home/hewei# ,其中 # 符號就是超級用戶許可權的標志。再輸入 exit 即可退回普通用戶身份。

在 Git學習筆記 #1 基礎知識介紹 中,已經簡單介紹了命令行界面的一些使用技巧,這些命令在 Linux 系統的 Bash 中同樣使用。這里羅列出 Linux 常用快捷鍵:

常見的執行 Linux 命令的格式是這樣的: 命令名稱 [命令參數] [命令對象] 。其中,命令參數用於對命令進行調整,使之更好地貼近需求,參數分為 長格式 短格式 ,如: man --help , man -h 。短格式之間可以合並,合並後僅保留一個減號即可。

在 Linux 相關的手冊中,我們會約定俗成地將可選擇的、非必需的參數使用 中括弧 引起來,而命令所要求的、必須有的參數或對象值,則不帶中括弧。

此外,要注意 Linux 系統中的命令、參數、對象都是 嚴格區分大小寫 的。

Shell 除了是一個 互動式 (Interactive)的命令解釋器,它還是一種 程序設計語言 (Shell Script)。它定義了各種變數和參數,並提供了許多在高級語言中才具有的控制結構,包括循環和分支。

用 Shell 編寫的 腳本文件 即 .sh 文件,它能在 Shell 環境下運行,fork 出一個 子進程 ,調用系統內核來執行 批處理 (Batch)的系統控制。在文件的第一行,通常是 #!/bin/bash ,這句話約定了這個腳本需要哪種 Shell 環境來執行。

通過如下命令就可以執行一個 Shell 腳本:

下面羅列了部分常用指令與參數的介紹,更多功能請在幫助手冊中檢索。

㈦ 如何用shell 自定義終端命令

alias ad=』git add』
alias st=』git status』
alias stsh=』git stash』
alias ci=』git commit』
alias br=』git branch』
alias bra=』git branch -a』
alias co=』git checkout』
alias dif=』git diff』
alias po=』git push』
alias poo=』git push origin』
alias pod=』git push origin develop』
alias por=』git push origin release』
alias pom=』git push origin master』
alias pl=』git pull』
alias plo=』git pull origin』
alias pld=』git pull origin develop』
alias pldreb=』git pull origin develop –rebase』
alias plr=』git pull origin release』
alias plm=』git pull origin master』
alias pu=』git pull upstream』
alias fch=』git fetch』
alias reseth=』git reset –hard』
alias reb=』git rebase』
alias rebc=』git add . && git rebase –continue』
alias reba=』git rebase –abort』
alias log=』git log』
alias kk=』gitk』

閱讀全文

與shell終端命令相關的資料

熱點內容
編譯器怎麼調用構造函數的 瀏覽:95
高質量cpdf 瀏覽:821
福建電信代理伺服器雲主機 瀏覽:616
美圖看看pdf 瀏覽:432
編譯後報錯 瀏覽:291
網路設備怎麼加密 瀏覽:785
hbuilderx文件夾有哪些 瀏覽:102
空調壓縮機生產板塊 瀏覽:612
開源多媒體伺服器都有什麼 瀏覽:392
反編譯了別人的app會被發現嗎 瀏覽:918
上海光裕汽車壓縮機有限公司 瀏覽:333
連接ps4伺服器地址 瀏覽:136
新神魔大陸三星賬號是什麼伺服器 瀏覽:677
壓縮機lj100cy 瀏覽:556
王者系統怎麼轉回安卓系統 瀏覽:749
linux查看路由表命令 瀏覽:506
高手程序員使用什麼筆記本 瀏覽:440
ios壓縮圖片app 瀏覽:839
排隊論pdf 瀏覽:520
python調用無參函數 瀏覽:799