1. 磁盤
查看當前磁盤使用情況
df -h
查看某個文件大小
du -sh 文件名
如果不輸入文件名,默認是當前目錄的所有文件之和,即當前目錄大小
2. 系統內存
free
參數詳解:https://blog.csdn.net/loongshawn/article/details/51758116
3. CPU
CPU 使用情況
top
top -bn 1 -i -c
CPU 核心數量
cat /proc/cpuinfo |grep "cores"|uniq
CPU主頻
cat /proc/cpuinfo |grep MHz|uniq
4. Linux系統內核版本
uname -a
5. find命令
在指定目錄下查找文件名以log開頭的文件:find mysoftware/nacos/distribution/ -name log*
6. less 打開文件
通過less命令打開文件,通過Shift+G到達文件底部,再通過?+關鍵字的方式來根據關鍵來搜索信息。
"q"退出less查看
7. grep 高亮
通過grep的方式查關鍵字,具體用法是, grep 關鍵字 文件名,如果要兩次在結果里查找的話,就用grep 關鍵字1 文件名 | 關鍵字2 --color。最后--color是高亮關鍵字。
8.Linux文件的掛載mount以及作用
https://blog.csdn.net/qq_39521554/article/details/79501714
9.查看當前Linux系統開放的端口
netstat -nupl (UDP類型的端口)
netstat -ntpl (TCP類型的端口)
10.輸出內容到文件中
內容 > 文件
javap -p Day.class > DayCompiled.java
11.curl模擬請求
基本語法: curl ${url} -d ${key=value} -X ${METHOD}
例子如下:
$ curl http://localhost:5000/todo1 -d "data=Remember the milk" -X PUT
{"todo1": "Remember the milk"}
$ curl http://localhost:5000/todo1
{"todo1": "Remember the milk"}
$ curl http://localhost:5000/todo2 -d "data=Change my brakepads" -X PUT
{"todo2": "Change my brakepads"}
$ curl http://localhost:5000/todo2
{"todo2": "Change my brakepads"}
特殊的get請求多個參數,要利用反斜杠轉義"&":curl http://localhost:5000/test?name=LuoTianyan\&age=123
下載文件:curl -O https://alibaba.github.io/arthas/arthas-boot.jar
更多curl命令用法,如獲取cookie、模擬瀏覽器訪問:https://www.cnblogs.com/hujiapeng/p/8470099.html
12. 指定目錄下獲得文件大小排序
獲得當前用戶目錄下mysoftware目錄下的文件夾大小
$ du -h --max-depth=1 ~/mysoftware/ | sort -n
由于我是直接用的root賬號,所以目錄是"/root/mysoftware"
--max-depth=1表示目錄的深度為"1",也可設置為"2"。
查看指定文件大小
du -h demo-arthas-spring-boot.jar
13. 獲取當前目錄所占大小
查看當前目錄文件大小(展示大小為K,M的形式)
ll -h
查看指定目錄大小
du -sh 目錄名
du -h --max-depth=1 . | sort -r
實際就是倒序排列,第一個"."就是當前目錄
du -s ./* | sort -rn | head -3
14. 找到端口被哪個進程占用,并殺死kill
比如找到"8080"端口被那個進程占用,并殺死
netstat -anp | grep 8080
kill -9 PID
15. 返回上一次目錄
有時候cd進入了一個目錄,想返回上一次的目錄
cd -
"-"是連字符
16. 后臺啟動運行服務輸出到指定的文件
nohup java -jar demo-arthas-spring-boot.jar --server.port=1945 > logs/temp.log 2>&1&
https://blog.csdn.net/yuhui123999/article/details/80593750
nohup 命令后臺啟動
17. 查看某個文件的安裝目錄
whereis 文件名
比如 whereis java ,查看java的路徑
whereis jps; whereis mvn; whereis mysql
18. 后臺啟動kafka
nohup bin/kafka-server-start.sh config/server.properties 1>/dev/null 2>&1 &
因為kafka配置文件中指定了日志的目錄,所以不需要啟動時指定輸出日志到哪個文件
/dev/null : 在類Unix系統中,/dev/null,或稱空設備,是一個特殊的設備文件,它丟棄一切寫入其中的數據(但報告寫入操作成功),讀取它則會立即得到一個EOF。
在程序員行話,尤其是Unix行話中,/dev/null 被稱為位桶(bit bucket)或者黑洞(black hole)。空設備通常被用于丟棄不需要的輸出流,或作為用于輸入流的空文件。當你讀它的時候,它會提供無限的空字符(NULL, ASCII NUL, 0x00)。
http://www.cnblogs.com/lishihai/p/7986565.html
19. ls匹配當前目錄文件名
ls -al demo.txt
匹配demo.txt并換行顯示
20. Linux 命令行中的2>&1
nohup command>/dev/null 2>&1 &
(1)首先,就是一個nohup表示當前用戶和系統的會話下的進程忽略響應HUP消息,也就是不掛斷地運行命令。
(2)& 符號是把該命令以后臺的job的形式運行。
(3)那么就剩下command>/dev/null 2>&1,其中command>/dev/null較好理解,/dev/null表示一個空設備,就是把 command的執行結果重定向到空設備中,說白了就是不顯示任何信息。
(4)最后,2>&1又是什么含義?
2>&1 幾個基本符號及其含義
/dev/null 表示空設備文件
0 表示stdin標準輸入
1 表示stdout標準輸出
2 表示stderr標準錯誤
command > /dev/null相當于執行了command 1 > /dev/null。執行command產生了標準輸出stdout(用1表示),重定向到/dev/null的設備文件中。
分析 2>&1
對于2>&1的理解,2就是標準錯誤,1是標準輸出,那么這條命令不就是相當于把標準錯誤重定向到標準輸出么?是的。
為什么是&1而不是1,這里& 符號是什么?& 符號可以理解為引用(reference)。&1 就是對標準輸出的引用。
來源: https://www.toutiao.com/a6697751395870704131/?timestamp=1559442717&app=news_article&group_id=6697751395870704131&req_id=201906021031560100250811596095B06