新聞資訊
NEWSLinux 后臺研發(fā)超實用命令總結(jié)

1.概述
計算機領(lǐng)域水太深了,不可能什么都記住,所以只需要理解并記住核心的原理,其他的交給網(wǎng)絡(luò),用的時候查一下就可以了。因此整理了平時工作中自己覺得好用的命令。
2.系統(tǒng)相關(guān)
查看手冊命令
man
只查看當前下一級目錄占用大小
du --max-depth=1 -h
查看某個進程是否在運行
ps -ef | grep prog | grep -v grep
pgrep prog
查看內(nèi)存統(tǒng)計
free -m
查看系統(tǒng)任務(wù)運行情況(類似window的任務(wù)管理器)
top
根據(jù)內(nèi)存或者CPU占用對進程排序
內(nèi)存排序:執(zhí)行top,然后按“shift + m”,這時進程就會按照內(nèi)存占用從大到小排序。
CPU排序:執(zhí)行top即可,top默認是按照CPU占用排序,也可以執(zhí)行“shift + p”從內(nèi)存大小排序轉(zhuǎn)換為CPU排序。
查看系統(tǒng)CPU占用情況
mpstat -P ALL 2
查看系統(tǒng)io,內(nèi)存,swap分區(qū),cpu等匯總統(tǒng)計信息
vmstat 2
查看系統(tǒng)tcp連接情況
netstat -anpt
3.進程相關(guān)
殺掉所有某個程序的所有進程
killall program
強殺一個指定pid的進程,江湖俗稱“酒殺”,一殺必中
kill -9 pid
查看某個程序的所有進程
pidof program
查看指定pid的進程的運行時加載的環(huán)境變量
cat /proc/pid/environ | tr -s '0' 'n'
通過pid查看對應(yīng)的執(zhí)行文件(這對查看來歷不明的進程有幫助)
lsof -p pid | grep txt
查看指定pid的進程內(nèi)存地址空間映射(查看進程運行時實際加載的是那個庫)
pmap -x pid
查看程序的符號表(排查編譯連接失敗,調(diào)用異常等問題很好用)
nm file
readelf -s file
查看指定pid的進程線程關(guān)系樹(查看某個開源程序是否是多線程模型)
pstree -p pid
查看指定pid的進程打開的文件
lsof -p pid
查看指定pid的進程當前運行時的堆棧
pstack pid
查看指定pid的進程當前在執(zhí)行的系統(tǒng)調(diào)用
strace -p pid
查看指定pid的進程當前在執(zhí)行的庫調(diào)用
ltrace -p pid
查看指定程序依賴的動態(tài)鏈接庫
ldd program
4.運營調(diào)試相關(guān)
從一堆文件中查找包含某個字符串的文件(編譯一堆文件時有變量沖突時特別好用,可以快速定位在那些文件中聲明了相同的變量)
find ./ -type f -name ".c" -o -name ".h" | xargs grep "strings"
查看文件被那些進程打開(對查看庫被那些進程使用,在你要修改一個基礎(chǔ)庫在評估影響范圍的時候就很好用)
fuser -v filename
lsof filename
對字符串求MD5值或者SHA1值(驗證程序MD5和SHA1算法時特別有用)
echo -n "abcde123" | md5sum
echo -n "abcde123" | sha1sum
linux shell中如何快速查詢歷史命令
ctrl + r
查看執(zhí)行歷史帶詳細時間
export HISTTIMEFORMAT="%F %T whoami "
history
c++函數(shù)符號轉(zhuǎn)換成c模式工具
c++filt
gdb設(shè)置打印完整字符串
set print element 0
scp跨主機遠程拷貝
scp src user@host:dest
ssh登錄遠程主機
ssh user@host
返回當前用戶的home目錄
cd
cd ~
返回上一個目錄
cd -
刪除當前輸入的命令
ctrl + u
中斷當前命令的輸入或者中斷當前在執(zhí)行的前臺程序
ctrl + c
強制退出當前命令的執(zhí)行,有時執(zhí)行ctrl + c無用時采用
ctrl + \
實時查看日志文件的輸出(只要日志有更新就能看到且是實時的)
tail -20f /home/xxx/log/yy.log
測試web服務(wù)工具
curl
wget
打包壓縮命令
tar -zcvf test.tar ./*
解包解壓命令
tar -zxvf test.tar
5.寫在最后
后續(xù)我會寫一系列關(guān)于Linux后端研發(fā)的文章,為大家展示如何一步一步構(gòu)建一個真正的Linux后端集群服務(wù),記錄一個“Linux C/C++后端研發(fā)菜鳥成長記”。
原文來自:碼龍喵
免責聲明:以上內(nèi)容為本網(wǎng)站轉(zhuǎn)自其它媒體,相關(guān)信息僅為傳遞更多信息之目的,不代表本網(wǎng)觀點,亦不代表本網(wǎng)站贊同其觀點或證實其內(nèi)容的真實性。

