學(xué)習(xí)啦>學(xué)習(xí)電腦>操作系統(tǒng)>Linux教程>

Linux下的常用命令

時(shí)間: 志藝942 分享

  隨著mono的發(fā)展,asp.net也實(shí)現(xiàn)了跨平臺(tái)的開發(fā),而要mono在Linux下跑起來,也需要掌握一些Linux的操作,接下來是小編為大家收集的Linux下的常用命令,希望能幫到大家。

  Linux下的常用命令

  一、Shell的簡介

  Linux系統(tǒng)中由內(nèi)核,Shell,文件系統(tǒng)和一些實(shí)用的程序構(gòu)造。Shell是操作系統(tǒng)提供給用戶使用的界面

  它提供了用戶與內(nèi)核進(jìn)行交互操作的一種接口。Shell負(fù)責(zé)接收用戶輸入的命令并將其送入內(nèi)核去執(zhí)行,并把系統(tǒng)的響應(yīng)返回給用戶,因此Shell實(shí)質(zhì)上就是一個(gè)命令解析器。

  二、Linux圖形界面跟文本界面的切換

  1,在圖形界面打開終端窗口 輸入 init 3 便進(jìn)入了文本編譯界面。

  2,在文本編譯界面 輸入init 5 便能返回了圖形界面。

  文本命令行界面下的關(guān)機(jī)與重啟操作

  重啟 : reboot 或者 shutdown -r now

  關(guān)機(jī) : shutdown -h now

  如定時(shí)在今天的17:30分關(guān)機(jī) : shutdown -h 17:30

  三、目錄結(jié)構(gòu)

  (1) /bin 與 /sbin

  對(duì)Linux操作系統(tǒng)進(jìn)行維護(hù)操作的實(shí)用命令基礎(chǔ)上都包含在/bin和/sbin 目錄中。

  /bin 目錄通常存放用戶常用的一些基本命令,包括對(duì)目錄和文件操作的命令,系統(tǒng)實(shí)用程序,壓縮工具,rpm包管理程序等,如:login,date,ping,netstat,mount```

  除了/sbin目錄外,還有/usr/bin和/usr/local/bin目錄,也存放有一些軟件包所安裝的程序文件

  (2)/boot

  /boot 是Linux的引導(dǎo)分區(qū)在根分區(qū)的掛載點(diǎn)目錄,該目錄下的內(nèi)容就是引導(dǎo)分區(qū)中的內(nèi)容,存放著Linux啟動(dòng)所需要的文件

  (3) /dev

  /dev是device(設(shè)備)的簡寫,該目錄在Linux系統(tǒng)中是一個(gè)非常重要的目錄,用于存放系統(tǒng)中所有設(shè)備的設(shè)備文件

  (4)/etc

  /etc 目錄也是Linux系統(tǒng)的一個(gè)非常重要的目錄,用于存放Linux系統(tǒng)的各種配置文件,包括網(wǎng)絡(luò)配置,設(shè)備配置信息,X系統(tǒng)配置,用戶信息等都放在該目錄下。

  (5)/home

  Linux系統(tǒng)的所有普通用戶的目錄)(home directory)默認(rèn)放在/home目錄中

  (6)/lib

  /lib 是library(庫)的簡寫,編譯器在編譯鏈接時(shí),會(huì)自動(dòng)到這兩個(gè)目錄下搜索所需的庫文件。

  (7)/lost+found

  該目錄用于存放系統(tǒng)非正常關(guān)機(jī)后,系統(tǒng)重啟時(shí),進(jìn)行磁盤檢查所產(chǎn)生的碎片文件。

  (8) /media 與 /mnt

  在舊版Linux操作系統(tǒng)中,用于掛載CD-ROM,軟盤和U盤等設(shè)備的掛點(diǎn)目錄。

  (9) /misc /opt 與 /srv

  這三個(gè)目錄默認(rèn)都是空的。/misc 目錄用于存放一些額外的雜亂的文件;/opt 目錄推薦用于安裝大型的應(yīng)用軟件。

  (10) /proc

  /proc 目錄中的內(nèi)容是由系統(tǒng)自動(dòng)產(chǎn)生的,其內(nèi)容是當(dāng)前內(nèi)存的一個(gè)虛擬鏡像,在該目錄中,可看到一些由當(dāng)前運(yùn)行的進(jìn)程號(hào)組成的字目錄。

  用cat 命令可以顯示該目錄下的一些特殊內(nèi)容,可以查看到系統(tǒng)的一些特殊信息。

  cat /proc/cpuinfo 詳細(xì)顯示當(dāng)前系統(tǒng)CPU的硬盤信息

  cat /proc/interrupts 顯示當(dāng)前系統(tǒng)設(shè)備所使用到的中斷信息

  cat /proc/meminfo 顯示內(nèi)存信息

  cat /proc/version 顯示Linux版本信息

  cat /proc/partitions 查看目前機(jī)器中的所有磁盤及分區(qū)情況

  (11) /sys

  /sys 目錄下存放的時(shí)Linux系統(tǒng)的一些重要的設(shè)備驅(qū)動(dòng)程序和模塊

  (12) /usr

  /usr 目錄一般用來存放與用戶直接相關(guān)的程序或文件。用戶安裝的程序或要自行建立的目錄,一般可放在該目錄下。

  (13)/tmp 與 /var

  /tmp 存放臨時(shí)文件,如程序執(zhí)行期間產(chǎn)生的臨時(shí)文件

  /var 目錄則用于存放經(jīng)常變化的文件,對(duì)于存取頻繁或內(nèi)容經(jīng)常發(fā)生變化的文件。

  四、Linux的文件屬性

  ls命令僅列出文件名或者目錄名,使用“ls-l”或者"ll"命令,即可以列出文件和目錄的詳細(xì)信息,其顯示格式和各列的含義如下所示

  drwxr-xr-x 3 root root 4096 jul 2 10:34 text123

  (文件屬性) (數(shù)量) (擁有者) (所屬的組) (文件大小) (建檔月份) (日) (時(shí)間) (文件名)

  在Linux中,用戶對(duì)文件的操作權(quán)限分為可讀/可寫/可執(zhí)行 三種,分別用r,w,x表示。如用戶無某個(gè)權(quán)限,則在相應(yīng)權(quán)限位置用“-”來表示無權(quán)限。

  如某個(gè)文件有x屬性,則該文件就可以執(zhí)行,屬于可執(zhí)行文件,具有x屬性的文件一般是二進(jìn)制程序文件或者可執(zhí)行的腳本文件。

  類型標(biāo)識(shí)用于說明該文件是“普通類型”還是“鏈接類型”文件或者目錄。對(duì)于普通文件,第一個(gè)類型標(biāo)識(shí)顯示為“-”,若符號(hào)鏈接文件,則該位置的標(biāo)識(shí)為l(注:是L的小寫),若是目錄,則該位置的屬性標(biāo)識(shí)為d。

  a,對(duì)于屬性權(quán)限的表示法;權(quán)限除了r,w,x來表示外還可以用一個(gè)三位數(shù)字來表示,比如644,其中百位上的數(shù)字代表擁有者的權(quán)限,十位上的數(shù)字代表擁有者所屬的用戶組中的其他用戶對(duì)該文件或者目錄所擁有的權(quán)限,個(gè)位上的數(shù)字,代表其他用戶對(duì)該文件擁有的權(quán)限,這種采用數(shù)字來表示權(quán)限的方法,稱為絕對(duì)權(quán)限表示法。

  b,改變文件或者目錄的權(quán)限。由于權(quán)限有兩種表示方法,因此,改變權(quán)限的chmod命令的具體用法也有兩種。

  利用絕對(duì)權(quán)限表達(dá)來設(shè)置或者改變文件或者目錄的權(quán)限,其方法為:

  chmod[R] 絕對(duì)權(quán)限值 要設(shè)置的文件或者目錄名

  比如,假如~/setup.sh文件目前的權(quán)限為rw-r--r--,若要是更改為rw-rw-r--,則實(shí)現(xiàn)的命令,chmod 664 setup.sh

  第二種方法:

  若要給其他用戶增加讀的權(quán)限,則實(shí)現(xiàn)的命令為:

  chmode 0+r ~/setup.sh

  若要同時(shí)去掉用戶組和其他用戶對(duì)該文件的讀權(quán)限,則實(shí)現(xiàn)命令為:

  chmod go-r/setup.sh

  若文件擁有者,用戶組和其他用戶都只賦予讀的權(quán)限,則實(shí)現(xiàn)命令為:

  chmod ugo-r ~/stup.sh

  若為文件的擁有者和所屬的組增加s權(quán)限,則為設(shè)置命令為:

  chomd ug+S ~/setup.sh

  五、Linux常用命令

  A,目錄操作

  1,創(chuàng)建目錄

  mkdir[-p] 目錄名稱及路徑

  例如,若要在root用戶的主目錄中創(chuàng)建一個(gè)mysoft目錄,則實(shí)現(xiàn)的命令為:

  [root@ROOT ~]#mkdir ~/text123

  2,刪除目錄

  rmdir 要?jiǎng)h除的目錄及路徑名稱

  例如,若要?jiǎng)h除 /srv/www目錄下的images目錄,則操作命令為:

  [root@ROOT ~]#rmdir /srv/www/images

  3,查詢當(dāng)前目錄

  查詢當(dāng)前所處的目錄位置使用pwd命令,該命令關(guān)鍵字來源于print working directory,其命令用法為:pwd

  4,改變當(dāng)前目錄

  cd ~或 cd.. 等等

  B,文本操作命令

  1,Is命令

  Is命令用于列出一個(gè)或者多個(gè)目錄下的文件及目錄

  2,cp命令

  cp是copy命令的縮寫,用于文件或者目錄的復(fù)制,其用法為:

  cp[參數(shù)選項(xiàng)] 源文件 目標(biāo)文件

  cp -r源目錄 目標(biāo)目錄

  3,rm命令

  rm命令用于刪除文件或者目錄,在命令行中包括一個(gè)或多個(gè)文件名(各文件名間用空格分隔)

  rm[參數(shù)選項(xiàng)]文件或目錄名路徑

  例如 要?jiǎng)h除/root/mysoft目錄及其下的全部內(nèi)容,則操作命令為:

  [root@ROOT ~]#rm -r /root/mysoft

  4,mv命令

  mv命令用于移動(dòng)或者重命名目錄或者文件,命令關(guān)鍵字來源于move

  mv[參數(shù)選項(xiàng)]源目錄或文件名 目標(biāo)目錄或者文件名

  例如 若要將/root/mysoft目錄移動(dòng)到/root/newsoft 目錄之下,則實(shí)現(xiàn)命令為:

  [root@ROOT ~]#mv ~/mysoft ~/newsoft/

  [root@ROOT ~]#ll

  [root@ROOT ~]#ls ~/newsoft/

  若路徑相同,僅文件名或者目錄名不同,則更名文件或者目錄,例如,若要將

  ~/mydoc/test.doc文件更名為mywork.doc,則實(shí)現(xiàn)的命令為:

  [root@ROOT ~]#mv ~/mydoc/test.doc ~/mydoc/mywork.doc

  mv 命令若使用-b(backup)參數(shù),則在覆蓋已存在的文件前,系統(tǒng)會(huì)自動(dòng)創(chuàng)建原存在的文件的一個(gè)備份,備份文件名為原名稱后附加一個(gè)~符號(hào)。

  5,touch 命令

  該命令用來更新指定的文件或者目錄的訪問時(shí)間和修改時(shí)間為當(dāng)前系統(tǒng)的日期和時(shí)間,查看當(dāng)前系統(tǒng)日期和時(shí)間,可使用date命令。

  比如,若要在~/mydoc目錄下創(chuàng)建兩個(gè)空文件file。text和file2.text,則命令為:

  [root@ROOT ~]#touch ~/mydoc/fifel.txt~/mydoc/fifle2.txt

  各文件名用空格分隔

  6,ln命令

  該命令用來創(chuàng)建符號(hào)鏈接 (相當(dāng)于創(chuàng)建快捷方式)

  a,軟鏈接

  軟鏈接,由于指向原文件或原目錄的一個(gè)鏈接,因此生成的鏈接文件很小。原文件刪除后,鏈接文件也會(huì)失去了作用,刪除鏈接文件,對(duì)原文件無任何影響。

  ln -s真實(shí)文件或目錄 符號(hào)鏈接文件名或者目錄名

  例如,若要將/bin/libssl.so.0.9.8b文件創(chuàng)建一個(gè)名為libssl.so的符號(hào)鏈接文件,則創(chuàng)建命令為:

  [root@ROOT ~]#ln -s /lib/libss.so.0.9.8b /lib/libssl.so

  b,硬鏈接

  創(chuàng)建硬鏈接,實(shí)質(zhì)就是創(chuàng)建了另一個(gè)指向相同節(jié)點(diǎn)。硬鏈接使用不用帶-s參數(shù)的ls命令來創(chuàng)建,其方法為:

  ln 原文件名 硬鏈接文件名

  硬鏈接無法跨越不同的文件系統(tǒng),分區(qū)和掛載的設(shè)備,只能在源文件所在的同一磁盤的同一個(gè)分區(qū)上創(chuàng)建硬鏈接,而且硬鏈接只針對(duì)文件,不能用于目錄。刪除原文件后,硬鏈接文件仍然可以使用。

  比如,在/root目錄下創(chuàng)建一個(gè)名為 text123.txt文件類型,文件內(nèi)容為 it is my life ,然后創(chuàng)建一個(gè)

  該文件的硬鏈接文件,硬鏈接文件名為hardlik.txt 則操作為:

  [root@ROOT ~]#echo 'it is my life'>/root/text123.txt

  [root@ROOT ~]#ll text123.txt

  [root@ROOT ~]#ln text123.txt hardlik.txt

  [root@ROOT ~]#ll -i *.txt

  7,查看文本文件的內(nèi)容

  a, cat 命令

  在cat命令后面可指定多個(gè)文件或者使用通配符,實(shí)現(xiàn)依次顯示多個(gè)文件的內(nèi)容。

  比如:

  [root@ROOT ~]#cat filel.txt file2.txt

  增加使用-n參數(shù)選項(xiàng),在顯示時(shí)可為各行加上編號(hào)。比如:

  [root@ROOT ~]#cat -n filel.txt

  more或less命令

  對(duì)于內(nèi)容較多的文件,不適合用cat命令來查看,此時(shí)使用more或者less命令。

  more命令可實(shí)現(xiàn)分屏顯示文件內(nèi)容,按任意鍵后,系統(tǒng)會(huì)自動(dòng)顯示下一屏的內(nèi)容,到達(dá)末尾行,命令執(zhí)行立即結(jié)束。cat是連續(xù)滾動(dòng)顯示的。

  less比more功能更強(qiáng)大,除了有more的功能外,還支持用光標(biāo)鍵向上或向下滾動(dòng)瀏覽文件,對(duì)于寬文檔還支持水平滾動(dòng),當(dāng)達(dá)到文件末尾時(shí),less命令的不會(huì)自動(dòng)退出,需要輸入Q來結(jié)束瀏覽。

  head與tail命令

  head命令用來查看一個(gè)文件前面部分的信息,默認(rèn)顯示前面10行的內(nèi)容,也可指定要查看

  的行數(shù) 如 head -n

  例如 要查看/boot/grub/grub.conf文件前10行的內(nèi)容,則操作為:

  [root@ROOT ~]#head /boot/grub/grub.conf

  如要查看前20行的內(nèi)容,則操作命令為:

  [root@ROOT ~]#head -20 /boot/grub/grub.conf

  8.grep命令

  該命令用于在指定的文件中查找并顯示含有指定字符串的行。其用法為:

  grep 要找的字符串文本 文件名

  比如,若要在/var/log/maillog文件中,查找顯示含有alipay關(guān)鍵字的行的內(nèi)容,則操作命令為:

  [root@ROOT ~]#grep alipay /var/log/maillog

  若要在當(dāng)前目錄下的所有文件中查找輸出包含alipay關(guān)鍵字的行,則操作命令為:

  [root@ROOT ~]#grep alipay *

  9.重定向操作符">",">>"與"<""<<"

  (1) 輸出重定向符">",">>"

  ">"和">>"為輸出重定符,它能實(shí)現(xiàn)將一個(gè)命令的輸出重定向到一個(gè)文件中,而這個(gè)不是屏幕

  。比如, 若要將last命令的輸出結(jié)果,傳遞保存到mylog.txt中,則實(shí)現(xiàn)命令為:

  [root@ROOT ~]#last >mylog.txt

  [root@ROOT ~]#less mylog.txt

  ">"與">>"的區(qū)別是:“>”每次是以覆蓋方式重寫后面的文件內(nèi)容,若指定的文件不存在,系統(tǒng)會(huì)自動(dòng)

  創(chuàng)建。若要將內(nèi)容以追加的方式添加到后面的文件中,應(yīng)該采取">>"。

  比如,若要將庫文件的搜索路徑以追加方式添加到/etc/ld.so.conf文件中,則實(shí)現(xiàn)的命令為:

  [root@ROOT ~]#echo"/post4u/lib">>/etc/id.so.conf

  (2) 輸入重定向符"<","<<"

  標(biāo)準(zhǔn)輸入重定向符"<"用于改變一個(gè)命令的輸入源。比如cat

  "<"為此處操作符,該操作符在從鍵盤讀取內(nèi)容時(shí),讀到指定的字符串時(shí),便停止讀取動(dòng)作,然后將所讀取的內(nèi)容輸出去。

  "<<"該操作符在鍵盤讀取內(nèi)容時(shí),讀到指定的字符串,便停止讀取動(dòng)作,然后將所讀的內(nèi)容輸出。與cat 結(jié)合操作 如 cat << 結(jié)束讀取的標(biāo)識(shí)字符串

  10, 管道管理

  管道操作符為"|". 利用管道操作符可實(shí)將一個(gè)命令的輸出當(dāng)作另一個(gè)命令的輸入,后者的輸出有可以做為第三條命令的輸入。管道操作符通常與grep命令配置使用,實(shí)現(xiàn)從前面一個(gè)命令執(zhí)行后的大量輸出結(jié)果中,查找顯示指定的內(nèi)容。例如,若要查詢系統(tǒng)當(dāng)前是否安裝了openssl軟件包,則可以采用以下命令:

  [root@ROOT ~]#rpm -qa|openssl

  rpm -qa 用于查詢顯示當(dāng)前系統(tǒng)的所有軟件包。由于軟件包比較多,顯示出來后逐個(gè)查找很不方便,利用以上命令就比較快捷。通過管道操作,就將rpm -qa命令的輸出結(jié)果傳遞給grep命令進(jìn)行查詢,grep查詢后將包括openssl關(guān)鍵字的那一行內(nèi)容輸出。

  六、軟件包的管理

  1,查看rpm軟件包

  在Linux的維護(hù)與管理中,經(jīng)常需要了解當(dāng)前系統(tǒng)安裝了哪些軟件包,或者查詢某一個(gè)軟件包是否被安裝了,此時(shí)就需要使用rpm的軟件包查詢功能。

  查詢軟件包使用-q參數(shù),若要進(jìn)一步查詢軟件包的其他方面的信息,可結(jié)合使用一些相關(guān)的其他參數(shù),比如-a,-i,-l和-f參數(shù),這些參數(shù)分別來源于all,information,list和file,因此這幾個(gè)參數(shù)的功能與本身的英文單詞含義

  相同。

  (1),查詢已安裝的全部軟件包

  要查詢已經(jīng)安裝的全部軟件包,可結(jié)合使用-a參數(shù),即利用-qa參數(shù)來實(shí)現(xiàn)。其命令為: rpm -qa 由于系統(tǒng)安裝的軟件包一般比較多,該命令的輸出是以連續(xù)滾屏的方式顯示的,不便于閱讀,因此,通常利用管道操作符結(jié)合less命令來實(shí)現(xiàn)瀏覽查看,其命令為:

  [root@ROOT ~]#rpm -qa|less

  若要具體查詢某一個(gè)軟件包是否已安裝,或包含某關(guān)鍵字的軟件包都安裝了哪些,可利用管道操作符和grep命令來實(shí)現(xiàn)比如,如要在已安裝的軟件包中,查詢包含ssl關(guān)鍵字的軟件包有哪些,則實(shí)現(xiàn)的命令為:

  [root@ROOT ~]# rpm-qa|grep ssl

  openssl-0.9.8b-8.3.el5

  docbook-style-dsssl-1.79-4.1

  openssl-devel-0.9.8b-8.3.el5

  (2)查看指定的軟件包是否被安裝了

  命令用法:rpm -q 軟件包名稱列表

  該命令可同時(shí)查詢多個(gè)軟件包,各軟件包名稱之間用空格符分隔。若指定的軟件包已經(jīng)被安裝了,將顯示該軟件包的完整路徑,如沒有被按照則會(huì)提示沒有被安裝。

  比如,若要查詢openssh軟件包是否已被安裝,則操作命令為:

  [root@ROOT ~]#rpm -q openssh

  openssh-4.3p2-16.el5

  如要查詢telnet-server服務(wù)的軟件包是否安裝,則操作命令為:

  [root@ROOT ~]#rpm -q telnet-server

  package telnet is not installed

  (3) 安裝rpm軟件包

  安裝rpm軟件包使用-i參數(shù)(install),通常還結(jié)合使用-v和-h參數(shù),其中-v 參數(shù)代表verbose,利用該參數(shù)可顯示更為詳細(xì)的安裝信息;-h 參數(shù)代表hash,在安裝過程中將通過顯示一系列"#"來表示安裝的進(jìn)度。因此安裝RPM軟件包通常用法為:rpm -vih 軟件包全路徑

  例如, 若要安裝ppp-2.4.4-1.el5.i386.rpm軟件包,則操作命令為:

  [root@ROOT ~]#rpm -ivh /media/cdrom/Server/ppp-2.4.4-1.el5.i386.rpm waning:.......

  (4) 刪除軟件包

  若要從Linux中刪除原來的prm軟件包所安裝的軟件包,可使用帶-e參數(shù)的rpm命令來實(shí)現(xiàn),其命令用法為:rpm -e

  軟件包名。

  
看了“Linux下的常用命令”還想看:

1.必學(xué)100個(gè)常用linux命令大全

2.Linux常用指令大全

3.Linux系統(tǒng)有什么常用命令

4.Linux下最常用的Shell命令的介紹

5.Linux中常用操作命令總結(jié)

2890574