又來發福利啦!這次是常見指令大集合哦!
1.系統相關
檢視手冊命令
man
只檢視當前下一級目錄佔用大小
du --max-depth=1 -h
檢視某個程序是否在執行
ps -ef | grep prog | grep -v grep
pgrep prog
檢視記憶體統計
free -m
檢視系統任務執行情況(類似window的任務管理器)
top
根據記憶體或者CPU佔用對程序排序
記憶體排序:執行top,然後按“shift + m”,這時程序就會按照記憶體佔用從大到小排序。
CPU排序:執行top即可,top預設是按照CPU佔用排序,也可以執行“shift + p”從記憶體大小排序轉換為CPU排序。
檢視系統CPU佔用情況
mpstat -P ALL 2
檢視系統io,記憶體,swap分割槽,cpu等彙總統計資訊
vmstat 2
檢視系統tcp連線情況
netstat -anpt
2.程序相關
殺掉所有某個程式的所有程序
killall program
強殺一個指定pid的程序,江湖俗稱“酒殺”,一殺必中
kill -9 pid
檢視某個程式的所有程序
pidof program
檢視指定pid的程序的執行時載入的環境變數
cat /proc/pid/environ | tr -s "" " "
透過pid檢視對應的執行檔案(這對檢視來歷不明的程序有幫助)
lsof -p pid | grep txt
檢視指定pid的程序記憶體地址空間對映(檢視程序執行時實際載入的是那個庫)
pmap -x pid
檢視程式的符號表(排查編譯連線失敗,呼叫異常等問題很好用)
nm file
readelf -s file
檢視指定pid的程序執行緒關係樹(檢視某個開源程式是否是多執行緒模型)
pstree -p pid
檢視指定pid的程序開啟的檔案
lsof -p pid
檢視指定pid的程序當前執行時的堆疊
pstack pid
檢視指定pid的程序當前在執行的系統呼叫
strace -p pid
檢視指定pid的程序當前在執行的庫呼叫
ltrace -p pid
檢視指定程式依賴的動態連結庫
ldd program
總結一些超實用的Linux命令
3.運營除錯相關
從一堆檔案中查詢包含某個字串的檔案(編譯一堆檔案時有變數衝突時特別好用,可以快速定位在那些檔案中聲明瞭相同的變數)
find ./ -type f -name ".c" -o -name ".h" | xargs grep "strings"
檢視檔案被那些程序開啟(對檢視庫被那些程序使用,在你要修改一個基礎庫在評估影響範圍的時候就很好用)
fuser -v filename
lsof filename
對字串求MD5值或者SHA1值(驗證程式MD5和SHA1演算法時特別有用)
echo -n "abcde123" | md5sum
echo -n "abcde123" | sha1sum
linux shell中如何快速查詢歷史命令
ctrl + r
檢視執行歷史帶詳細時間
export HISTTIMEFORMAT="%F %T whoami "
history
c++函式符號轉換成c模式工具
c++filt
gdb設定列印完整字串
set print element 0
scp跨主機遠端複製
scp src user@host:dest
ssh登入遠端主機
ssh user@host
返回當前使用者的home目錄
cd
cd ~
返回上一個目錄
cd -
ctrl + u
中斷當前命令的輸入或者中斷當前在執行的前臺程式
ctrl + c
強制退出當前命令的執行,有時執行ctrl + c無用時採用
ctrl +
實時檢視日誌檔案的輸出(只要日誌有更新就能看到且是實時的)
tail -20f /home/xxx/log/yy.log
測試web服務工具
curl
wget
打包壓縮命令
tar -zcvf test.tar ./*
解包解壓命令
tar -zxvf test.tar
又來發福利啦!這次是常見指令大集合哦!
1.系統相關
檢視手冊命令
man
只檢視當前下一級目錄佔用大小
du --max-depth=1 -h
檢視某個程序是否在執行
ps -ef | grep prog | grep -v grep
pgrep prog
檢視記憶體統計
free -m
檢視系統任務執行情況(類似window的任務管理器)
top
根據記憶體或者CPU佔用對程序排序
記憶體排序:執行top,然後按“shift + m”,這時程序就會按照記憶體佔用從大到小排序。
CPU排序:執行top即可,top預設是按照CPU佔用排序,也可以執行“shift + p”從記憶體大小排序轉換為CPU排序。
檢視系統CPU佔用情況
mpstat -P ALL 2
檢視系統io,記憶體,swap分割槽,cpu等彙總統計資訊
vmstat 2
檢視系統tcp連線情況
netstat -anpt
2.程序相關
殺掉所有某個程式的所有程序
killall program
強殺一個指定pid的程序,江湖俗稱“酒殺”,一殺必中
kill -9 pid
檢視某個程式的所有程序
pidof program
檢視指定pid的程序的執行時載入的環境變數
cat /proc/pid/environ | tr -s "" " "
透過pid檢視對應的執行檔案(這對檢視來歷不明的程序有幫助)
lsof -p pid | grep txt
檢視指定pid的程序記憶體地址空間對映(檢視程序執行時實際載入的是那個庫)
pmap -x pid
檢視程式的符號表(排查編譯連線失敗,呼叫異常等問題很好用)
nm file
readelf -s file
檢視指定pid的程序執行緒關係樹(檢視某個開源程式是否是多執行緒模型)
pstree -p pid
檢視指定pid的程序開啟的檔案
lsof -p pid
檢視指定pid的程序當前執行時的堆疊
pstack pid
檢視指定pid的程序當前在執行的系統呼叫
strace -p pid
檢視指定pid的程序當前在執行的庫呼叫
ltrace -p pid
檢視指定程式依賴的動態連結庫
ldd program
總結一些超實用的Linux命令
3.運營除錯相關
從一堆檔案中查詢包含某個字串的檔案(編譯一堆檔案時有變數衝突時特別好用,可以快速定位在那些檔案中聲明瞭相同的變數)
find ./ -type f -name ".c" -o -name ".h" | xargs grep "strings"
檢視檔案被那些程序開啟(對檢視庫被那些程序使用,在你要修改一個基礎庫在評估影響範圍的時候就很好用)
fuser -v filename
lsof filename
對字串求MD5值或者SHA1值(驗證程式MD5和SHA1演算法時特別有用)
echo -n "abcde123" | md5sum
echo -n "abcde123" | sha1sum
linux shell中如何快速查詢歷史命令
ctrl + r
檢視執行歷史帶詳細時間
export HISTTIMEFORMAT="%F %T whoami "
history
c++函式符號轉換成c模式工具
c++filt
gdb設定列印完整字串
set print element 0
scp跨主機遠端複製
scp src user@host:dest
ssh登入遠端主機
ssh user@host
返回當前使用者的home目錄
cd
cd ~
返回上一個目錄
cd -
ctrl + u
中斷當前命令的輸入或者中斷當前在執行的前臺程式
ctrl + c
強制退出當前命令的執行,有時執行ctrl + c無用時採用
ctrl +
實時檢視日誌檔案的輸出(只要日誌有更新就能看到且是實時的)
tail -20f /home/xxx/log/yy.log
測試web服務工具
curl
wget
打包壓縮命令
tar -zcvf test.tar ./*
解包解壓命令
tar -zxvf test.tar