學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > Linux教程 > Linux中的shell基本命令的使用

Linux中的shell基本命令的使用

時(shí)間: 佳洲1085 分享

Linux中的shell基本命令的使用

  linxu下的shell基本命令是必須掌握的基礎(chǔ)知識之一。下面由學(xué)習(xí)啦小編為大家整理了linux的shell基本命令的使用的相關(guān)知識,希望對大家有幫助!

  一、Linux中的shell基本命令的使用——硬件篇

  CPU相關(guān)

  lscpu #查看的是cpu的統(tǒng)計(jì)信息.

  cat /proc/cpuinfo #查看CPU信息詳細(xì)信息,如每個(gè)CPU的型號,主頻等

  內(nèi)存相關(guān)

  free -m #概要查看內(nèi)存情況 這里的單位是MB

  cat /proc/meminfo #查看內(nèi)存詳細(xì)信息

  磁盤相關(guān)

  lsblk #查看硬盤和分區(qū)分布,顯示很直觀

  df -h #查看各分區(qū)使用情況

  cat /proc/partitions #查看硬盤和分區(qū)

  mount | column -t #查看掛接的分區(qū)狀態(tài)

  網(wǎng)卡相關(guān)

  lspci | grep -i 'eth' #查看網(wǎng)卡硬件信息

  ifconfig -a #查看系統(tǒng)的所有網(wǎng)絡(luò)接口

  ethtool eth0 #如果要查看某個(gè)網(wǎng)絡(luò)接口的詳細(xì)信息,例如eth0的詳細(xì)參數(shù)和指標(biāo)

  二、Linux中的shell基本命令的使用——軟件篇

  內(nèi)核相關(guān)

  uname -a #查看版本當(dāng)前操作系統(tǒng)內(nèi)核信息)cat /proc/version #查看當(dāng)前操作系統(tǒng)版本信息cat /etc/issue #查看版本當(dāng)前操作系統(tǒng)發(fā)行版信息cat /etc/redhat-release #同上cat /etc/SuSE-release #suse系統(tǒng)下才可使用lsb_release -a #用來查看linux兼容性的發(fā)行版信息lsmod #列出加載的內(nèi)核模塊

  網(wǎng)絡(luò)

  ifconfig #查看所有網(wǎng)絡(luò)接口的屬性

  iptables -L #查看防火墻設(shè)置

  service iptables status #查看防火墻狀態(tài)

  service iptables stop #關(guān)閉防火墻

  route -n #查看路由表

  netstat -lntp #查看所有監(jiān)聽端口

  netstat -antp #查看所有已經(jīng)建立的連接

  netstat -s #查看網(wǎng)絡(luò)統(tǒng)計(jì)信息進(jìn)程

  netstat -at #列出所有tcp端口

  netstat -au #列出所有udp端口

  netstat -lt #只列出所有監(jiān)聽tcp端口

  系統(tǒng)管理

  top #查看系統(tǒng)所有進(jìn)程的詳細(xì)信息,比如CPU、內(nèi)存等,信息很多!

  df -lh #查看硬盤大小及使用率

  mount #掛接遠(yuǎn)程目錄、NFS、本地共享目錄到linux下

  hostname #查看/修改計(jì)算機(jī)名

  w #查看活動(dòng)用戶

  id #查看指定用戶信息

  last #查看用戶登錄日志

  cut -d: -f1 /etc/passwd #查看系統(tǒng)所有用戶

  cut -d: -f1 /etc/group #查看系統(tǒng)所有組

  crontab -l #查看當(dāng)前用戶的計(jì)劃任務(wù)服務(wù)

  chkconfig –list #列出所有系統(tǒng)服務(wù)

  chkconfig –list | grep on #列出所有啟動(dòng)的系統(tǒng)服務(wù)程序

  rpm -qa #查看所有安裝的軟件包

  uptime #查看系統(tǒng)運(yùn)行時(shí)間、用戶數(shù)、負(fù)載

  /sbin/chkconfig --list #查看系統(tǒng)自動(dòng)啟動(dòng)列表

  /sbin/chkconfig –add mysql #把MySQL添加到系統(tǒng)的啟動(dòng)服務(wù)組里面

  文件相關(guān)

  ls -lht #列出一個(gè)文件夾下所有文件及大小、訪問權(quán)限

  du -sh <dir> #查看指定目錄的大小

  du -lh <dir> #查看指定目錄及各文件的大小

  ln -s #建立軟鏈接

  進(jìn)程相關(guān)

  pstree -p pid #查看一個(gè)進(jìn)程下的所有線程

  pstree -a #顯示所有進(jìn)程的所有詳細(xì)信息,遇到相同的進(jìn)程名可以壓縮顯示。

  ps -ef #查看所有進(jìn)程

  kill -9 pid #殺死進(jìn)程

  kill all test #殺死進(jìn)程

  kill -9 `pgrep test` #殺死進(jìn)程

  ./test.sh & #使程序在后臺運(yùn)行

  nohup ./test.sh & #使程序在后臺運(yùn)行

  壓縮解壓縮

  zip -r dir.zip dir file #將目錄dir、文件file等壓縮到zip包,

  zip -re dir.zip dir file #創(chuàng)建zip包,且加密

  unzip dir.zip #解壓

  tar -zcvf dir.tar.gz dir file #將目錄dir、文件file等壓縮到tar包

  tar -xf dir.tar.gz #解壓

  screen命令

  screen命令組最大的好處就是當(dāng)你的shell退出或關(guān)閉后,你運(yùn)行的服務(wù)不會關(guān)系,也就是說,我們可以在screen里開啟一組服務(wù),且不受終端斷開的影響。

  screen -S test #創(chuàng)建一個(gè)名字為test的screen

  screen -r test #打開名字為test的screen

  screen -r pid #打開進(jìn)程號為pid的screen

  screen -ls #列出所有的screen

  ctrl + a,d #當(dāng)在一個(gè)screen時(shí),退出screen

  ctrl + a,n #當(dāng)在一個(gè)screen時(shí),切換到下一個(gè)窗口

  ctrl + a,c #當(dāng)在一個(gè)screen時(shí),創(chuàng)建一個(gè)新的窗口

  scp命令

  scp local_file remote_username@remote_ip:remote_dir #拷貝本地文件到遠(yuǎn)程機(jī)器上

  scp -r local_dir remote_username@remote_ip:remote_dir #拷貝本地整個(gè)目錄到遠(yuǎn)程機(jī)器上

  軟件包安裝管理命令

  假設(shè)你想要安裝的軟件包叫做app,注意,這里的命令通常需要sudo或者root權(quán)限。

  //centos系統(tǒng)、redhat系統(tǒng)

  rpm -qa | grep app #查找本機(jī)是否安裝了app;

  rpm -ivh app.rpm #假設(shè)你有app的rpm包,這樣直接安裝

  sudo yum install app #否則就在線安裝

  yum update app #更新app

  rpm -e app #刪除已安裝的app包

  //suse、opensuse系統(tǒng)

  zypper search app #查找本機(jī)是否安裝了app;

  zypper install app #安裝

  zypper update app #更新

  zypper remove app #刪除

  zypper lr #列出所有已定義的安裝源。

  zypper ar #添加新安裝源。

  zypper rr #刪除指定的安裝源

  zypper mr #修改指定的安裝源

  //ubuntu系統(tǒng)

  apt-get install app #安裝

  apt-get update app #更新apt-get remove app #刪除

  apt-cache search app #搜索軟件包

  dpkg -i app.deb #假設(shè)你有app的deb包,這樣直接安裝

  三、Linux中shell基本命令的使用——常用命令

  常用指令

  ls   顯示文件或目錄

  -l 列出文件詳細(xì)信息l(list)

  -a 列出當(dāng)前目錄下所有文件及目錄,包括隱藏的a(all)

  mkdir 創(chuàng)建目錄

  -p 創(chuàng)建目錄,若無父目錄,則創(chuàng)建p(parent)

  cd 切換目錄

  touch 創(chuàng)建空文件

  echo 創(chuàng)建帶有內(nèi)容的文件。

  cat 查看文件內(nèi)容

  cp 拷貝

  mv 移動(dòng)或重命名

  rm 刪除文件

  -r 遞歸刪除,可刪除子目錄及文件

  -f 強(qiáng)制刪除

  find 在文件系統(tǒng)中搜索某文件

  wc 統(tǒng)計(jì)文本中行數(shù)、字?jǐn)?shù)、字符數(shù)

  grep 在文本文件中查找某個(gè)字符串

  rmdir 刪除空目錄

  tree 樹形結(jié)構(gòu)顯示目錄,需要安裝tree包

  pwd 顯示當(dāng)前目錄

  ln 創(chuàng)建鏈接文件

  more、less 分頁顯示文本文件內(nèi)容

  head、tail 顯示文件頭、尾內(nèi)容

  ctrl+alt+F1 命令行全屏模式

3635813