天天看點

Linux常用的shell指令彙總

今天我們一起來看看Linux系統下常用的系統級指令,包括軟硬體檢視、修改指令,有CPU、記憶體、硬碟、網絡、系統管理等指令。

說明:所有指令是在Centos 6.4 64位的虛拟機系統進行測試的。這些指令是需要大家深深的記在腦海裡的哦

硬體篇

CPU相關

lscpu             #檢視的是cpu的統計資訊. cat /proc/cpuinfo       #檢視CPU資訊詳細資訊,如每個CPU的型号,主頻等

記憶體相關

free -m               #概要檢視記憶體情況  這裡的機關是MB cat /proc/meminfo       #檢視記憶體詳細資訊

磁盤相關

lsblk               #檢視硬碟和分區分布,顯示很直覺 df -h               #檢視各分區使用情況 cat /proc/partitions       #檢視硬碟和分區 mount | column -t         #檢視挂接的分區狀态

網卡相關

lspci | grep -i 'eth'       #檢視網卡硬體資訊 ifconfig -a             #檢視系統的所有網絡接口 ethtool eth0           #如果要檢視某個網絡接口的詳細資訊,例如eth0的詳細參數和名額

軟體篇

核心相關

uname -a                 #檢視版本目前作業系統核心資訊 cat /proc/version           #檢視目前作業系統版本資訊 cat /etc/issue           #檢視版本目前作業系統發行版資訊 cat /etc/redhat-release       #同上 cat /etc/SuSE-release         #suse系統下才可使用 lsb_release -a             #用來檢視linux相容性的發行版資訊 lsmod                 #列出加載的核心子產品

網絡

ifconfig                 #檢視所有網絡接口的屬性 iptables -L               #檢視防火牆設定 service iptables status       #檢視防火牆狀态 service iptables stop       #關閉防火牆 route -n                 #檢視路由表 netstat -lntp             #檢視所有監聽端口 netstat -antp             #檢視所有已經建立的連接配接 netstat -s               #檢視網絡統計資訊程序 netstat -at               #列出所有tcp端口 netstat -au               #列出所有udp端口 netstat -lt             #隻列出所有監聽tcp端口

系統管理

top                     #檢視系統所有程序的詳細資訊,比如CPU、記憶體等,資訊很多! df -lh                 #檢視硬碟大小及使用率 mount                   #挂接遠端目錄、NFS、本地共享目錄到linux下 hostname               #檢視/修改計算機名 w                       #檢視活動使用者 id                     #檢視指定使用者資訊 last                   #檢視使用者登入日志 cut -d: -f1 /etc/passwd       #檢視系統所有使用者 cut -d: -f1 /etc/group       #檢視系統所有組 crontab -l               #檢視目前使用者的計劃任務服務 chkconfig –list         #列出所有系統服務 chkconfig –list | grep on     #列出所有啟動的系統服務程式 rpm -qa                 #檢視所有安裝的軟體包 uptime                   #檢視系統運作時間、使用者數、負載 /sbin/chkconfig --list       #檢視系統自動啟動清單 /sbin/chkconfig –add mysql     #把MySQL添加到系統的啟動服務組裡面

檔案相關

ls -lht                 #列出一個檔案夾下所有檔案及大小、通路權限 du -sh <dir>             #檢視指定目錄的大小 du -lh <dir>           #檢視指定目錄及各檔案的大小 ln -s                   #建立軟連結

程序相關

pstree -p pid           #檢視一個程序下的所有線程 pstree  -a               #顯示所有程序的所有詳細資訊,遇到相同的程序名可以壓縮顯示。 ps -ef                 #檢視所有程序 kill -9 pid             #殺死程序 kill all test           kill -9 `pgrep test`     ./test.sh &             #使程式在背景運作 nohup ./test.sh &      

壓縮解壓縮

zip -r dir.zip dir file   #将目錄dir、檔案file等壓縮到zip包, zip -re dir.zip dir file #建立zip包,且加密 unzip dir.zip             #解壓 tar -zcvf dir.tar.gz dir file     #将目錄dir、檔案file等壓縮到tar包 tar -xf dir.tar.gz      

screen指令

screen指令組最大的好處就是當你的shell退出或關閉後,你運作的服務不會關系,也就是說,我們可以在screen裡開啟一組服務,且不受終端斷開的影響。

screen -S test           #建立一個名字為test的screen screen -r test           #打開名字為test的screen screen -r pid           #打開程序号為pid的screen screen -ls               #列出所有的screen ctrl + a,d               #當在一個screen時,退出screen ctrl + a,n               #當在一個screen時,切換到下一個視窗 ctrl + a,c             #當在一個screen時,建立一個新的視窗

scp指令

scp local_file remote_username@remote_ip:remote_dir     #拷貝本地檔案到遠端機器上 scp -r local_dir remote_username@remote_ip:remote_dir   #拷貝本地整個目錄到遠端機器上

軟體包安裝管理指令

假設你想要安裝的軟體包叫做app,注意,這裡的指令通常需要sudo或者root權限。

//centos系統、redhat系統 rpm -qa | grep app       #查找本機是否安裝了app; rpm -ivh app.rpm         #假設你有app的rpm包,這樣直接安裝 sudo yum install app   #否則就線上安裝 yum update app           #更新app rpm -e app               #删除已安裝的app包 //suse、opensuse系統 zypper search app       zypper install app     #安裝 zypper update app       #更新 zypper remove app     #删除 zypper lr               #列出所有已定義的安裝源。 zypper    ar             #添加新安裝源。 zypper    rr             #删除指定的安裝源 zypper    mr           #修改指定的安裝源 //ubuntu系統 apt-get install app     apt-get update app     apt-get remove app       apt-cache search app   #搜尋軟體包 dpkg -i app.deb         #假設你有app的deb包,這樣直接安裝 本文轉自xinsz08の平行時空部落格51CTO部落格,原文連結http://blog.51cto.com/xinsz08/1794730如需轉載請自行聯系原作者 次元2018