Linux常用命令


1.常用命令

ps -ef | grep collect 查看當前進程

image

pwdx 3833(進程id) 查看當前進程的目錄

image

kill -9 3833(進程id) 殺死當前進程

sh start.sh 重啟進程

tailf nohup.out 動態查看日志

mkdir 目錄名 創建目錄

rmdir 目錄名 刪除目錄

touch 文件名 創建文件

rm 文件名 刪除文件

瀏覽文件

cat用於顯示文件的內容

more一般用於要顯示的內容會超過一個畫面長度的情況。

  • 按空格鍵顯示下一個畫面。
  • 回車顯示下一行內容。
  • 按 q 鍵退出查看。

tail命令是在實際使用過程中使用非常多的一個命令,它的功能是:用於顯示文件后幾行的內容。

用法:

tail -10 /etc/passwd 查看后10行數據

tail -f catalina.log 動態查看日志(*****)

ctrl+c 結束查看

2.常用快捷鍵

1、tab //命令或路徑等的補全鍵,linux用的最多的一個快捷鍵 ⭐️
2、ctrl+a //光標迅速回到行首 ⭐️
3、ctrl+e //光標迅速回到行尾 ⭐️
4、ctrl+f //光標向右移動一個字符
5、ctrl+b //光標向左移動一個字符
6、ctrl+insert //復制命令行內容(mac系統不能使用)
7、shift+insert //粘貼命令行內容(mac系統不能使用)
8、ctrl+k //剪切(刪除)光標處到行尾的所有字符 ⭐️
9、ctrl+u //剪切(刪除)光標處到行首的所有字符 ⭐️
10、ctrl+w //剪切(刪除)光標前的一個字符
11、ctrl+y //粘貼 ctrl+k、ctrl+u、ctrl+w刪除的字符 ⭐️
12、ctrl+c //中斷終端正在執行的任務並開啟一個新的一行 ⭐️
13、ctrl+h //刪除光標前的一個字符(相當於退格鍵)
14、ctrl+d //退出當前shell命令行,如果是切換過來的用戶,則執行這個命令回退到原用戶 ⭐️
15、ctrl+r //搜索命令行使用過的歷史命令記錄 ⭐️
16、ctrl+g //從ctrl+r的搜索歷史命令模式中退出
17、ctrl+l //清楚屏幕所有的內容,並開啟一個新的一行 ⭐️
18、ctrl+s //鎖定終端,使之任何人無法輸入
19、ctrl+q //解鎖ctrl+s的鎖定狀態
20、ctrl+z //暫停在終端運行的任務,使用"fg"命令可以使暫停恢復 ⭐️
21、!! //執行上一條命令 ⭐️
22、!pw //這是一個例子,是執行以pw開頭的命令,這里的pw可以換成任何已經執行過的字符 ⭐️
23、!pw:p //這是一個例子,是僅打印以pw開頭的命令,但不執行,最后的那個“p”是命令固定字符 ⭐️
24、!num //執行歷史命令列表的第num條命令,num代指任何數字(前提是歷史命令里必須存在)⭐️
25、!$ //代指上一條命令的最后一個參數,該命令常用於shell腳本中 ⭐️
26、esc+. //注意那個".“ 意思是獲取上一條命令的(以空格為分隔符)最后的部分 ⭐️
27、esc+b //移動到當前單詞的開頭
28、esc+f //移動到當前單詞的結尾

echo -e 命令詳解

echo在php中是輸入那么在linux中是不是也是輸入呢,當然echo在linux也是輸入不過它的用法比php強大多了可以帶參數及一些東西,下面我們來看一篇關於linux echo命令介紹及-n、-e參數詳解吧,具體如下所示。

echo命令用於在shell中打印shell變量的值,或者直接輸出指定的字符串。linux的echo命令,在shell編程中極為常用, 在終端下打印變量value的時候也是常常用到的,因此有必要了解下echo的用法echo命令的功能是在顯示器上顯示一段文字,一般起到一個提示的作用。

語法

echo(選項)(參數)選項

-e:激活轉義字符。使用-e選項時,若字符串中出現以下字符,則特別加以處理,而不會將它當成一般文字輸出:

•\a 發出警告聲;
•\b 刪除前一個字符;
•\c 最后不加上換行符號;
•\f 換行但光標仍舊停留在原來的位置;
•\n 換行且光標移至行首;
•\r 光標移至行首,但不換行;
•\t 插入tab;
•\v 與\f相同;
•\ 插入\字符;
•\nnn 插入nnn(八進制)所代表的ASCII字符;
參數

變量:指定要打印的變量。

實例

用echo命令打印帶有色彩的文字:

文字色:

echo -e "\e[1;31mThis is red text\e[0m"
This is red text•\e[1;31m 將顏色設置為紅色
•\e[0m 將顏色重新置回
顏色碼:重置=0,黑色=30,紅色=31,綠色=32,黃色=33,藍色=34,洋紅=35,青色=36,白色=37

背景色:

echo -e "\e[1;42mGreed Background\e[0m"
Greed Background顏色碼:重置=0,黑色=40,紅色=41,綠色=42,黃色=43,藍色=44,洋紅=45,青色=46,白色=47

文字閃動:

echo -e "\033[37;31;5mMySQL Server Stop...\033[39;49;0m"
紅色數字處還有其他數字參數:0 關閉所有屬性、1 設置高亮度(加粗)、4 下划線、5 閃爍、7 反顯、8 消隱

echo -n 不換行輸出
$echo -n "123"
$echo "456"

最終輸出
123456

而不是
123
456
echo -e 處理特殊字符

若字符串中出現以下字符,則特別加以處理,而不會將它當成一般文字輸出:

\a 發出警告聲;
\b 刪除前一個字符;
\c 最后不加上換行符號;
\f 換行但光標仍舊停留在原來的位置;
\n 換行且光標移至行首;
\r 光標移至行首,但不換行;
\t 插入tab;
\v 與\f相同;
\ 插入\字符;
\nnn 插入nnn(八進制)所代表的ASCII字符;

下面舉例說明一下:

$echo -e "a\bdddd" //前面的a會被擦除
dddd

$echo -e "a\adddd" //輸出同時會發出報警聲音
adddd

$echo -e "a\ndddd" //自動換行
a
dddd

我們在使用linux的過程中,經常會去下載安裝包,下載時候的那個進度提示是不是比較好玩,下載進度的百分比在不斷變化,利用echo -e和-n參數我們也可以實現這個效果了。


  • echo -e "\033[背景顏色;字體顏色m字符串\033[0m

格式: echo -e "\033[字背景顏色;字體顏色m字符串\033[0m"

例如:
echo -e "\033[41;36m something here \033[0m"

其中41的位置代表底色, 36的位置是代表字的顏色

那些ascii code 是對顏色調用的始末.
\033[ ; m …… \033[0m

字背景顏色范圍:40----49
40:黑
41:深紅
42:綠
43:黃色
44:藍色
45:紫色
46:深綠
47:白色

字顏色:30-----------39
30:黑
31:紅
32:綠
33:黃
34:藍色
35:紫色
36:深綠
37:白色

===============================================ANSI控制碼的說明
\33[0m 關閉所有屬性
\33[1m 設置高亮度
\33[4m 下划線
\33[5m 閃爍
\33[7m 反顯
\33[8m 消隱
\33[30m -- \33[37m 設置前景色
\33[40m -- \33[47m 設置背景色
\33[nA 光標上移n行
\33[nB 光標下移n行
\33[nC 光標右移n行
\33[nD 光標左移n行
\33[y;xH設置光標位置
\33[2J 清屏
\33[K 清除從光標到行尾的內容
\33[s 保存光標位置
\33[u 恢復光標位置
\33[?25l 隱藏光標
\33[?25h 顯示光標

Linux查看CPU、內存使用情況常用命令

1.top

image

  • 第一行、任務隊列信息 :

  • top - 10:41:25 up 94 days, 21:39, 5 users, load average: 0.39, 0.39, 0.36

    與uptime命令執行結果相同。
    	◦	15:29:24:系統當前時間
    	◦	up 3 days, 8:04:主機已運行時間
    	◦	5 users:用戶連接數(不是用戶數,who命令)
    	◦	load average: 0.09, 0.12, 0.19:系統平均負載,統計最近1,5,15分鍾的系統平均負載
    	•	補充:uptime -V可查詢版本
    
  • 第二行:進程信息 :

  • Tasks: 548 total, 1 running, 387 sleeping, 0 stopped, 0 zombie

    	•	Tasks: 287 total:進程總數
    	•	2 running:正在運行的進程數
    	•	285 sleeping:睡眠的進程數
    	•	0 stopped:停止的進程數
    	•	0 zombie:僵屍進程數
    
  • 第三行:CPU信息:

  • %Cpu(s): 1.5 us, 1.0 sy, 0.0 ni, 97.5 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st

    	•	1.5 us:用戶空間所占CPU百分比
    	•	0.9 sy:內核空間占用CPU百分比
    	•	0.0 ni:用戶進程空間內改變過優先級的進程占用CPU百分比
    	•	97.5 id:空閑CPU百分比
    	•	0.2 wa:等待輸入輸出的CPU時間百分比
    	•	0.0 hi:硬件CPU中斷占用百分比
    	•	0.0 si:軟中斷占用百分比
    	•	0.0 st:虛擬機占用百分比
    
  • 第四行:內存信息

  • KiB Mem : 32662844 total, 247632 free, 2757052 used, 29658160 buff/cache

    (與第五行的信息類似與free命令) 
    	•	8053444 total:物理內存總量
    	•	7779224 used:已使用的內存總量
    	•	274220 free:空閑的內存總量(free+used=total)
    	•	359212 buffers:用作內核緩存的內存量
    
  • 第五行:swap信息:

  • KiB Swap: 17653752 total, 17653752 free, 0 used. 19781068 avail Mem

    	•	17653752  total:交換分區總量
    	•	0  used:已使用的交換分區總量
    	•	17653752  free:空閑交換區總量
    	•	4358088 cached Mem:緩沖的交換區總量,內存中的內容被換出到交換區,然后又被換入到內存,但是使用過的交換區沒有被覆蓋,交換區的這些內容已存在於內存中的交換區的大小,相應的內存再次被換出時可不必再對交換區寫入。
    
    
    

image

•	PID:進程id
	•	USER:進程所有者的用戶名
	•	PR:優先級
   •	NI:nice值。負值表示高優先級,正值表示低優先級
	•	VIRT:進程使用的虛擬內存總量,單位kb。VIRT=SWAP+RES
	•	RES:進程使用的物理內存的大小
	•	SHR:進程使用的共享內
	•	S:進程狀態(D=不可中斷的睡眠狀態,R=運行,S=睡眠,T=跟蹤/停止,Z=僵屍進程)
	•	%CPU:上次更新到現在的CPU時間占用百分比
	•	%MEM:進程使用的物理內存百分比
	•	TIME+:進程所使用的CPU時間總計,單位1/100秒

原文鏈接:https://blog.csdn.net/u012954706/article/details/81134134

2.mpstat 、sar

查看cpu整體性能命令

image

image

mpstat -u 1 1

表示每秒采集一次 ; 第一個“1”代表時間,第二個“1”代表次數

mpstat -u 1 1 | grep Average | awk '{print $12}'

表示取到的cpu空閑利用率

image

3.nginx

ps -ef | grep nginx 查看nginx是否啟動

/usr/local/nginx/sbin/nginx 啟動nginx的命令

/usr/local/nginx/sbin/nginx -s stop 停止nginx的命令

/usr/local/nginx/sbin/nginx -s reload 重啟nginx的命令

4.SpringBoot項目啟動

1、基本的啟動命令,這種啟動方式需要一直占用啟動窗口,不能關閉窗口,關閉窗口就會關閉服務。

java -jar xxx.jar(jar包名稱)

2、這種方式啟動會將日志文件寫到指定的nohup .out文件中,關閉窗口進程會不會關閉,服務不會停止。

nohup java -jar xxx.jar &

3、這種方式啟動會優先讀取指定目錄下的application.yml配置文件,優先級大於jar中配置文件

nohup java -Done-jar.verbose=false -Xmx512m -jar -Dspring.config.location=application.yml xxx.jar &

4、這種方式可以指定日志文件的文件名稱為log.txt

nohup java -Done-jar.verbose=false -Xmx512m -jar -Dspring.config.location=application.yml xxx.jar > log.txt 2>&1 &

注:將以上命令寫入start.sh 文件中,可以通過 sh start.sh啟動項目


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM