linux---經常使用命令(二)

Shell中判斷語句if中-z至-d的意思node

[ -a FILE ] 若是 FILE 存在則爲真。linux

[ -b FILE ] 若是 FILE 存在且是一個塊特殊文件則爲真。ios

[ -c FILE ] 若是 FILE 存在且是一個字特殊文件則爲真。web

[ -d FILE ] 若是 FILE 存在且是一個目錄則爲真。shell

[ -e FILE ] 若是 FILE 存在則爲真。數據庫

[ -f FILE ] 若是 FILE 存在且是一個普通文件則爲真。ubuntu

[ -g FILE ] 若是 FILE 存在且已經設置了SGID則爲真。bash

[ -h FILE ] 若是 FILE 存在且是一個符號鏈接則爲真。服務器

[ -k FILE ] 若是 FILE 存在且已經設置了粘制位則爲真。網絡

[ -p FILE ] 若是 FILE 存在且是一個名字管道(F若是O)則爲真。

[ -r FILE ] 若是 FILE 存在且是可讀的則爲真。

[ -s FILE ] 若是 FILE 存在且大小不爲0則爲真。

[ -t FD ] 若是文件描述符 FD 打開且指向一個終端則爲真。

[ -u FILE ] 若是 FILE 存在且設置了SUID (set user ID)則爲真。

[ -w FILE ] 若是 FILE 若是 FILE 存在且是可寫的則爲真。

[ -x FILE ] 若是 FILE 存在且是可執行的則爲真。

[ -O FILE ] 若是 FILE 存在且屬有效用戶ID則爲真。

[ -G FILE ] 若是 FILE 存在且屬有效用戶組則爲真。

[ -L FILE ] 若是 FILE 存在且是一個符號鏈接則爲真。

[ -N FILE ] 若是 FILE 存在 and has been mod若是ied since it was last read則爲真。

[ -S FILE ] 若是 FILE 存在且是一個套接字則爲真。

[ FILE1 -nt FILE2 ] 若是 FILE1 has been changed more recently than FILE2, or 若是 FILE1 exists and FILE2 does not則爲真。

[ FILE1 -ot FILE2 ] 若是 FILE1 比 FILE2 要老, 或者 FILE2 存在且 FILE1 不存在則爲真。

[ FILE1 -ef FILE2 ] 若是 FILE1 和 FILE2 指向相同的設備和節點號則爲真。

[ -o OPTIONNAME ] 若是 shell選項 「OPTIONNAME」 開啓則爲真。

[ -z STRING ] 「STRING」 的長度爲零則爲真。

[ -n STRING ] or [ STRING ] 「STRING」 的長度爲非零 non-zero則爲真。

[ STRING1 == STRING2 ] 若是2個字符串相同。 「=」 may be used instead of 「==」 for strict POSIX compliance則爲真。

[ STRING1 != STRING2 ] 若是字符串不相等則爲真。

[ STRING1 < STRING2 ] 若是 「STRING1」 sorts before 「STRING2」 lexicographically in the current locale則爲真。

[ STRING1 > STRING2 ] 若是 「STRING1」 sorts after 「STRING2」 lexicographically in the current locale則爲真。

[ ARG1 OP ARG2 ] 「OP」 is one of -eq, -ne, -lt, -le, -gt or -ge. These arithmetic binary operators return true if 「ARG1」 is equal to, not equal to, less than, less than or equal to, greater than, or greater than or equal to 「ARG2」, respectively. 「ARG1」 and 「ARG2」 are integers.

 

導出文件到win:

 0.sz/rz命令:

 通常來講,linux服務器大可能是經過ssh來進行遠程的登錄和管理的,如何在命令方式下上和下載文件到服務器和本地呢?與ssh有關的兩個命令能夠提供很方便的操做:

   sz:將選定的文件發送(send)到本地機器

   rz:運行該命令會彈出一個文件選擇窗口,從本地選擇文件上傳到服務器(receive)設置上

  scp:直接從一臺主機發送到另外一臺主機         列:scp   路徑+文件名稱   主機名稱@主機IP:所接受文件位置路徑

1、文件處理命令:ls

功能描述:顯示目錄文件

命令英文原意:list

命令所在路徑:/bin/ls

執行權限:全部用戶

語法:  ls  選項[-ald]  [文件或目錄]

        -a    顯示全部文件,包括隱藏文件

-l  詳細信息顯示

-d  查看目錄屬性

        $ ls –a > dir.txt ← 將ls –a命令執行結果輸出到dir.txt文件。

        $ ls –a >> dir.txt ← 將ls –a命令執行結果附加到dir.txt文件以後。

 

 

2、文件處理命令:cd

功能描述:切換目錄

 

命令英文原意:change directory

命令所在路徑:shell內置命令

執行權限:全部用戶

語法:cd [目錄]

 

範例:  $ cd  / 切換到根目錄

$ cd    。。 回到上一級目錄

 

 

文件處理命令:pwd

功能描述:顯示當前所在的工做目錄

 

命令英文原意:print working directory

命令所在路徑:/bin/pwd

執行權限:全部用戶

語法:pwd

範例:  $ pwd

/etc/rc5.d

 

 

文件處理命令:touch

功能描述:建立空文件

 

命令名稱:touch

命令所在路徑:/bin/touch

執行權限:全部用戶

語法:touch  [文件名]

範例:$ touch newfile

 

 

文件處理命令:mkdir

功能描述:建立新目錄

 

命令英文原意:make directories

命令所在路徑:/bin/mkdir

執行權限:全部用戶

語法:mkdir  [目錄名]

範例:$ mkdir newdir

 

 

文件處理命令:cp

功能描述:複製文件或目錄

 

命令英文原意:copy

命令所在路徑:/bin/cp

執行權限:全部用戶

語法:    cp  -R  [源文件或目錄] [目的目錄]

              -R      複製目錄

範例:    $ cp  file1 file2  dir1

              將文件file一、file2複製到目錄dir1

$ cp  -R dir1 dir2

              將dir1下的全部文件及子目錄複製到dir2

 

 

文件處理命令:mv

功能描述:移動文件、改名

 

命令英文原意:move

命令所在路徑:/bin/mv

執行權限:全部用戶

語法:mv  [源文件或目錄]  [目的目錄]

範例:    $ mv  file1 file3

              將當前目錄下文件file1改名爲file3

$ mv  file2  dir2

將文件file2移動到目錄dir2下

 

 

文件處理命令:rm

功能描述:刪除文件

 

命令英文原意:remove

命令所在路徑:/bin/rm

執行權限:全部用戶

語法:rm  -r   [文件或目錄]

                -r        刪除目錄

範例:    $ rm file3

              刪除文件file3

              $ rm -r dir1

              刪除目錄dir1

 

 

文件處理命令:cat

功能描述:顯示文件內容

 

命令英文原意:concatenate and display files

命令所在路徑:/bin/cat

執行權限:全部用戶

語法:cat [文件名]

範例:    $ cat  /etc/issue

              $ cat  /etc/services

              $ cat preface.txt  more

              逐頁顯示preface.txt的內容;

              $ cat preface.txt >> outline.txt

              將preface.txt 附加到outline.txt文件以後;

              cat new.txt info.txt >readme.txt

              將new.txt和info.txt合併成readme.txt文件;

 

 

文件處理命令:more

命令所在路徑:/bin/more

執行權限:全部用戶

語法:more  [文件名]

       (空格) 或f           顯示下一頁

       (Enter)           顯示下一行

q或Q            退出

 

 

文件處理指令:head

功能描述:查看文件的前幾行

 

指令所在路徑:/bin/head

執行權限:All User

語法:    head  -num  [文件名] 

              -num  顯示文件的前num行

範例:$ head  -20  /etc/services

 

 

文件處理指令:tail

功能描述:查看文件的後幾行

 

指令所在路徑:/bin/tail

執行權限:All User

語法:    tail          -num  [文件名]

              -num       顯示文件的後num行

-f            動態顯示文件內容

範例:$ tail  -30  /etc/services

 

 

文件處理命令:ln

功能描述:產生連接文件

 

命令英文原意:link

命令所在路徑:/bin/ln

執行權限:全部用戶

語法:    ln  -s  [源文件]  [目標文件]

              -s  建立軟連接

範例:    $ ln -s  /etc/issue  /issue.soft

              建立文件/etc/issue的軟連接/issue.soft

              $ ln  /etc/issue  /issue.hard

              建立文件/etc/issue的硬連接/issue.hard

 

 

權限管理命令:chmod

功能描述:改變文件或目錄權限

 

命令英文原意:change the permissions mode of a file

命令所在路徑:/bin/chmod

執行權限:全部用戶

語法:chmod  [{ugo}{+-=}{rwx}] [文件或目錄]

[mode=421 ]  [文件或目錄]

範例:    $ chmod  g+w  file1

              賦予文件file1所屬組寫權限

              $ chmod  777  dir1

              設定目錄dir1爲全部用戶具備所有權限

表明字符

權限

對文件的含義

對目錄的含義

r

讀權限

能夠查看文件內容

能夠列出目錄中的內容

w

寫權限

能夠修改文件內容

能夠在目錄中建立、刪除文件

x

執行權限

能夠執行文件

能夠進入目錄

 

 

權限管理命令:chown

功能描述:改變文件或目錄的全部者

 

命令英文原意:change file ownership

命令所在路徑:/bin/chown

執行權限:全部用戶

語法:chown  [用戶] [文件或目錄]

範例:    $ chown  nobody  file1

              改變文件file1的全部者爲nobody

 

 

權限管理命令:chgrp

功能描述:改變文件或目錄的所屬組

 

命令英文原意:change file group ownership

命令所在路徑:/bin/chgrp

執行權限:全部用戶

語法:chgrp  [用戶組]  [文件或目錄]

範例:    $ chgrp adm file1

              改變文件file1的所屬組爲adm

 

 

權限管理命令:umask

功能描述:顯示、設置文件的缺省權限

 

命令所在路徑:/bin/umask

執行權限:全部用戶

語法:    umask [-S]

              -S   以rwx形式顯示新建文件或目錄缺省權限

範例:    $ umask

              $ umask -S

 

 

文件搜索命令:which

功能描述:顯示系統命令所在目錄

 

命令所在路徑:/usr/bin/which

執行權限:全部用戶

語法:which  [命令名稱]

範例:$ which ls

 

 

文件搜索命令:find

功能描述:查找文件或目錄

 

命令所在路徑:/usr/bin/find

執行權限:全部用戶

語法:find [搜索路徑]  [搜尋關鍵字]

範例:    $ find  /etc  -name  init

在目錄/etc中查找文件init

$ find  /  -size  +204800

在根目錄下查找大於100MB的文件

$ find  /  -user  sam

在根目錄下查找全部者爲sam的文件

              $ find  /etc  -ctime  -1

              在/etc下查找24小時內被修改過屬性的文件和目錄

$ find  /etc -size  +163840 -a -size  -204800

              在/etc下查找大於80MB小於100MB的文件

              $ find /etc -name inittab -exec ls -l {} \;

              在/etc下查找inittab文件並顯示其詳細信息

 

 

文件搜索指令:locate

功能描述:尋找文件或目錄

 

指令英文原義:list files in databases

指令所在路徑:/usr/bin/locate

執行權限:All User

語法:locate [搜索關鍵字]

範例:    $ locate file

              列出全部跟file相關的文件

 

 

文件搜索指令:updatedb

功能描述:創建整個系統目錄文件的數據庫

 

指令英文原義:update the slocate database

指令所在路徑:/usr/bin/updatedb

執行權限:root

語法:updatedb

範例:# updatedb

 

 

文件搜索命令:grep

功能描述:在文件中搜尋字串匹配的行並輸出

 

命令所在路徑:/bin/grep

執行權限:全部用戶

語法:grep  [指定字串] [源文件]

範例:# grep  ftp  /etc/services

              $ grep text *.conf

              ←搜索當前目錄中擴展名爲.conf且包含「text」字符串得文件。

              $ grep:amd.conf:    ←拒毫不符權限得操做

              $ grep:diskcheck.conf: ←拒毫不符權限得操做

              $ grep:grub.conf    ←拒毫不符權限得操做

              $ grep –s text *.conf   ←拒毫不符權限的操做之類的錯誤信息

 

 

幫助命令:man

功能描述:得到幫助信息

 

命令英文原意:manual

命令所在路徑:/usr/bin/man

執行權限:全部用戶

語法:man  [命令或配置文件]

範例:    $ man ls

              查看ls命令的幫助信息

              $ man services

              查看配置文件services的幫助信息

 

 

幫助指令:info

功能描述:得到幫助信息

 

指令英文原義:information

指令所在路徑:/usr/bin/info

執行權限:All User

語法:info  [任何關鍵字]

範例:    $ info ls

              查看ls指令的幫助信息

 

 

幫助指令:whatis

功能描述:得到索引的簡短說明信息

 

指令名稱:whatis  apropos  makewhatis

指令英文原義:search the whatis database for strings

指令所在路徑:/usr/bin/whatis apropos

 

              /usr/sbin/makewhatis

執行權限:All User,All User,root

語法:whatis apropos [任何關鍵字]

範例:    $ whatis ls

              $ apropos fstab              至關於man -k

              # makewhatis

              創建whatis和apropos搜索使用的數據庫,當使用這兩個命令發生錯誤時,就是whatis database 沒有創建

 

 

壓縮解壓命令:gzip

功能描述:壓縮文件

 

命令所在路徑:/bin/gzip

執行權限:全部用戶

語法:gzip  選項[文件]

壓縮後文件格式:.gz

 

 

壓縮解壓命令:gunzip

功能描述:解壓縮.gz的壓縮文件

 

命令所在路徑:/bin/gunzip

執行權限:全部用戶

語法:gunzip  選項[壓縮文件]

範例:$ gunzip file1.gz

 

 

壓縮解壓命令:tar

功能描述:打包目錄

 

命令所在路徑:/bin/tar

執行權限:全部用戶

語法:tar  選項[cvf]  [目錄]

              -c  產生.tar打包文件

              -v  顯示詳細信息

-f     指定壓縮後的文件名

-z    打包同時壓縮

壓縮後文件格式:.tar.gz

範例:    $ tar  -zcvf   dir1.tar.gz  dir1

              將目錄dir1壓縮成一個打包並壓縮的文件

 

tar命令解壓縮語法:

-x    解包.tar文件

-v    顯示詳細信息

-f     指定解壓文件

-z    解壓縮

範例:$ tar  -zxvf  dir1.tar.gz

 

 

壓縮解壓命令:zip

功能描述:壓縮文件或目錄

 

命令所在路徑:/usr/bin/zip

執行權限:全部用戶

語法:    zip  選項[-r]  [壓縮後文件名稱]  [文件或目錄]

              -r     壓縮目錄

壓縮後文件格式:.zip

範例:    $ zip  services.zip  /etc/services

              壓縮文件

              $ zip  -r  test.zip  /test

              壓縮目錄

 

 

壓縮解壓命令:unzip

功能描述:解壓.zip的壓縮文件

 

命令所在路徑:/usr/bin/unzip

執行權限:全部用戶

語法:unzip  [壓縮文件]

範例:$ unzip test.zip

 

 

壓縮解壓命令:bzip2

功能描述:解壓縮

 

命令所在路徑:/usr/bin/bzip2

執行權限:全部用戶

語法:    bzip2  選項[-k] [文件]

              -k   產生壓縮文件後保留原文件

功能描述:壓縮文件

壓縮後文件格式:.bz2

範例:$ bzip2 -k file1

命令所在路徑:/usr/bin/bunzip2

執行權限:全部用戶

語法:bunzip2  選項[-k] [壓縮文件]

                            -k   解壓縮後保留原文件

範例:$ bunzip2  -k file1.bz2

 

 

網絡通訊指令:write

功能描述:向另一個用戶發信息,以Ctrl+D做爲結束

 

指令所在路徑:/usr/bin/write

執行權限:All User

語法:write  <用戶名>

範例:   $ write  webmaster

 

 

網絡通訊指令:wall

功能描述:向全部用戶廣播信息

 

指令所在路徑:/usr/bin/wall

執行權限:All User

語法:wall  [message]  [文件名]

範例:   $ wall  Happy New Year!

 

 

網絡通訊命令:ping

功能描述:測試網絡連通性

 

命令所在路徑:/usr/sbin/ping

執行權限:root

語法:ping  選項  IP地址

範例:  #  ping 192.168.1.1

 

 

網絡通訊命令:ifconfig

功能描述:查看網絡設置信息

 

命令所在路徑:/usr/sbin/ifconfig

執行權限:root

語法:ifconfig  選項[-a]  [網卡設備標識]

                            -a    顯示全部網卡信息

範例:# ifconfig  -a

 

 

系統關機命令:shutdown

功能描述:關機

 

命令所在路徑:/usr/sbin/shutdown

執行權限:root

語法:shutdown

範例:# shutdown -h now

 

 

系統關機命令:reboot

功能描述:重啓系統

 

命令所在路徑:/usr/sbin/reboot

執行權限:root

語法:reboot

範例:# reboot

 

 

加載光盤命令:mount     umount: 卸載光盤命令

功能描述:加載光盤及軟盤

 

命令所在路徑:/usr/sbin/reboot

注意:    若要容許通常用戶也能加載光盤或軟盤,請修改/ect/fstab/設置文件

              /dev/cdrom/mut/cdrom udf,iso9660 noauto,owner,kudzu,ro,user

              ←若要讓通常用戶也加載光盤,請在此處加上「,user」項目。

範例:    # mount   /dev/cdrom  /mut/cdrom   ←加載光盤

              # umount  /mnt/cdrom         ←光盤卸載

 

 

刪除調度工做任務:crontab

範例:    $ crontab –r ←刪除任務調度中的工做

              $ crontab  -1 ←再查看一次任務調度中的工做

 

 

用戶使用過的歷史命令:history

 

 

 

 

 

一.用戶組管理

1.       添加用戶組

groupadd 

2.       刪除用戶組

groupdel 

3.       修改用戶組

groupmod 

4.       切換用戶組

newgrp <groupname> 

若是一個用戶同時屬於多個用戶組,能夠用 newgrp 命令切換至目的組,以便可以擁有該組的權限。

5.       查看全部組

全部組其實就是 /etc/group 文件的內容作一些過濾。

cat /etc/group | awk -F: '{print $1}' 

6.       查看用戶所在組

groups <username> 

 二.用戶管理

 1. 添加用戶

useradd <username> -d <path> -m -g –G –p 

經常使用的就是上面幾個參數,意思分別爲:

-d :指定用戶主目錄。若是此目錄不存在,同時使用 -m 就會建立此目錄。

-m :建立用戶主目錄

-g :用戶所屬組 ID 

-G :用戶所屬組名

-p :登陸密碼。注意這個登陸密碼不是明文,是指加密後的密碼。

 

useradd testuser –m –G mygroup 

將會建立一個 testuser 的用戶,並自動建立 /home/testuser 的用戶主目錄,並將用戶添加至 mygroup 組中。

2. 刪除用戶

userdel –f –r <username> 

-r :刪除用戶主目錄以及郵箱中的郵件

-f :強行刪除文件,即便屬主不是該用戶

3. 修改用戶

usermod <username> -d <path> -m -g –G –p 

參數意思與 useradd 大體相同

 

4. 用戶密碼

passwd <username>        :修改密碼

passwd –d <username> :命令將用戶的密碼刪除,即下次登陸無須密碼。

passwd –l <username>   :鎖定用戶,使其沒法登陸

 

三.文件屬主管理

 

1. 更改屬主

chown –R <username>.<groupname> file 

-R :表示遞歸更改

chown –R testuser.newgroup testpath 

上面的命令將 testpath 路徑下的全部文件的擁有者都改成 testuser ,擁有組都改成 newgroup 。

 

2. 設置文件掩碼

umask [a1 a2 a3 ] 

用戶可使用 umask 命令設置文件默認的生成掩碼。默認的生成掩碼告訴系統建立一個文件或目錄不該該賦予哪些權限。若是用戶將 umask 命令放在環境文件 .bash_profile 中,就能夠控制全部新建的文件和目錄的訪問權限。

 

a1 表示的是不容許屬主的權限, a2 表示的是不容許同組人的權限, a3 表明不容許其餘人的權限。

umask 022        :   表示設置不容許同組用戶和其餘用戶有寫的權限。

umask              :   顯示當前的默認生成掩碼。

 

CentOS最基本的20個經常使用命令

1. man 對你熟悉或不熟悉的命令提供幫助解釋
eg:man ls 就能夠查看ls相關的用法
注:按q鍵或者ctrl+c退出,在linux下可使用ctrl+c終止當前程序運行。

2. ls 查看目錄或者文件的屬*,列舉出任一目錄下面的文件
eg: ls /usr/man
ls -l

a.d表示目錄(directory),若是是一個"-"表示是文件,若是是l則表示是一個鏈接文件(link)
b.表示文件或者目錄許可權限.分別用可讀(r),可寫(w),可運行(x)。

3. cp 拷貝文件
eg: cp filename1 filename2 //把filename1拷貝成filename2
cp 1.c netseek/2.c //將1.c拷到netseek目錄下命名爲2.c

4. rm 刪除文件和目錄
eg: rm 1.c //將1.c這個文件刪除

5. mv 移走目錄或者改文件名
eg: mv filename1 filename2 //將filename1 更名爲filename2
mv qib.tgz ../qib.tgz //移到上一級目錄

6. cd 改變當前目錄 pwd 查看當前所在目錄完整路徑
eg: pwd //查看當前所在目錄路徑
cd netseek //進入netseek這個目錄
cd //退出當前目錄

7. cat,more命令
將某個文件的內容顯示出來。兩個命令所不一樣的是:cat把文件內容一直打印出來,而 more則分屏顯示
eg; cat>1.c //就能夠把代碼粘帖到1.c文件裏,按ctrl+d 保存代碼。
cat 1.c 或more 1.c //均可以查看裏面的內容。
gcc -o 1 1.c //將1.c編譯成.exe文件,咱們能夠用此命編譯出代碼。

8.chmod 命令 權限修改 用法:chmod 一位8進制數 filename。
eg: chmod u+x filenmame //只想給本身運行,別人只能讀
//u表示文件主人, g 表示文件文件所在組。 o 表示其餘人 ;r 表可讀,w 表可寫,x 表能夠運行
chmod g+x filename //同組的人來執行

9. clear,date命令
clear:清屏,至關與DOS下的cls;date:顯示當前時間。

10. mount 加載一個硬件設備
用法:mount [參數] 要加載的設備 載入點
eg: mount /dev/cdrom
cd /mnt/cdrom //進入光盤目錄

11. su 在不退出登錄的狀況下,切換到另一我的的身份
用法: su -l 用戶名(若是用戶名缺省,則切換到root狀態)
eg:su -l netseek (切換到netseek這個用戶,將提示輸入密碼)

12.whoami,whereis,which,id
//whoami:確認本身身份
//whereis:查詢命令所在目錄以及幫助文檔所在目錄
//which:查詢該命令所在目錄(相似whereis)
//id:打印出本身的UID以及GID。(UID:用戶身份惟一標識。GID:用戶組身份惟一標識。每個用戶只能有一個惟一的UID和 GID)
eg: whoami //顯示你自已登錄的用戶名
whereis bin 顯示bin所在的目錄,將顯示爲:/usr/local/bin
which bin

13. grep,find
grep:文本內容搜索;find:文件或者目錄名以及權限屬主等匹配搜索
eg: grep success *    /*查找當前目錄下面全部文件裏面含有success字符的文件

14. kill 能夠殺死某個正在進行或者已是dest狀態的進程
eg; ps ax

15. passwd 能夠設置口令
16. history 用戶用過的命令
17. !! 執行最近一次的命令
18. mkdir命令
eg: mkdir netseek //建立netseek這個目錄

19. tar 解壓命令
eg: tar -zxvf nmap-3.45.tgz //將這個解壓到nmap-3.45這個目錄裏

 

14解壓小全
tar -I或者bunzip2命令均可以解壓.bz2文件
tar xvfj example.tar.bz2
tar xvfz example.tar.gz
tar xvfz example.tgz
tar xvf example.tar
unzip example.zip 

15 如何配置讓哪些服務啓動(天外閒雲,q1208c)
方法1 運行ntsysv或者setup命令,進入菜單進行配置
方法2 chkconfig --list 顯示服務
chkconfig name on/off 打開/關閉「name」服務

16查看文件夾大小

du -sh uploadfile

17查看磁盤使用狀況

df -hl

12.刪除目錄下全部文件包括子目錄(bjchenxu)
rm -rf 目錄名


13查看系統信息(bjchenxu)
cat /proc/cpuinfo - CPU (i.e. vendor, Mhz, flags like mmx)
cat /proc/interrupts - 中斷
cat /proc/ioports - 設備IO端口
cat /proc/meminfo - 內存信息(i.e. mem used, free, swap size)
cat /proc/partitions - 全部設備的全部分區
cat /proc/pci - PCI設備的信息
cat /proc/swaps - 全部Swap分區的信息
cat /proc/version - Linux的版本號 至關於 uname -r
uname -a - 看系統內核等信息

 =================

 

15 如何配置讓哪些服務啓動
方法1 運行ntsysv或者setup命令,進入菜單進行配置
方法2 chkconfig --list 顯示服務
chkconfig name on/off 打開/關閉「name」服務

16查看文件夾大小

du -sh uploadfile

 

17查看磁盤使用狀況

df -hl

 

 

系統

# uname -a               # 查看內核/操做系統/CPU信息
# head -n 1 /etc/issue   # 查看操做系統版本
# cat /proc/cpuinfo      # 查看CPU信息
# hostname               # 查看計算機名
# lspci -tv              # 列出全部PCI設備
# lsusb -tv              # 列出全部USB設備
# lsmod                  # 列出加載的內核模塊
# env                    # 查看環境變量

資源

# free -m                # 查看內存使用量和交換區使用量
# df -h                  # 查看各分區使用狀況
# du -sh <目錄名>        # 查看指定目錄的大小
# grep MemTotal /proc/meminfo   # 查看內存總量
# grep MemFree /proc/meminfo    # 查看空閒內存量
# uptime                 # 查看系統運行時間、用戶數、負載
# cat /proc/loadavg      # 查看系統負載

磁盤和分區

# mount | column -t      # 查看掛接的分區狀態
# fdisk -l               # 查看全部分區
# swapon -s              # 查看全部交換分區
# hdparm -i /dev/hda     # 查看磁盤參數(僅適用於IDE設備)
# dmesg | grep IDE       # 查看啓動時IDE設備檢測情況

網絡

# ifconfig               # 查看全部網絡接口的屬性
# iptables -L            # 查看防火牆設置
# route -n               # 查看路由表
# netstat -lntp          # 查看全部監聽端口
# netstat -antp          # 查看全部已經創建的鏈接
# netstat -s             # 查看網絡統計信息

進程

# ps -ef                 # 查看全部進程
# top                    # 實時顯示進程狀態

用戶

# w                      # 查看活動用戶
# id <用戶名>            # 查看指定用戶信息
# last                   # 查看用戶登陸日誌
# cut -d: -f1 /etc/passwd   # 查看系統全部用戶
# cut -d: -f1 /etc/group    # 查看系統全部組
# crontab -l             # 查看當前用戶的計劃任務

服務

# chkconfig --list       # 列出全部系統服務
# chkconfig --list | grep on    # 列出全部啓動的系統服務

程序

# rpm -qa                # 查看全部安裝的軟件包



 內部命令和外部命令

 內部命令在系統啓動時就調入內存,是常駐內存的,因此執行效率高。

  • 外部命令是系統的軟件功能,用戶須要時才從硬盤中讀入內存。

type能夠用來判斷一個命令是否爲內置命令

type: usage: type [-afptP] name [name ...]

 

[root@linuxeye ~]# type type
type is a shell builtin
[root@linuxeye ~]# type -p type
[root@linuxeye ~]# type -t type
builtin
[root@linuxeye ~]# type type
type is a shell builtin
[root@linuxeye ~]# type -t type
builtin
[root@linuxeye ~]# type pwd
pwd is a shell builtin
[root@linuxeye ~]# type whiptail
whiptail is /usr/bin/whiptail
[root@linuxeye ~]# type -t whiptail
file

enable既能夠查看內部命令,同時也能夠判斷是否爲內部命令

[root@linuxeye ~]# enable -a #查看內部命令
[root@linuxeye ~]# enable whiptail #非內部命令
-bash: enable: whiptail: not a shell builtin
[root@linuxeye ~]# enable pwd #是內部命令

內部命令用戶輸入時系統調用的速率快,不是內置命令,系統將會讀取環境變量文件.bash_profile、/etc/profile去找PATH路徑。

而後在提一下命令的調用,有些歷史命令使用事後,會存在在hash表中,當你再次輸入該命令它的調用會是這樣一個過程。

hash——>內置命令——>PATH   命令的調用其實應該是這樣一個過程。

[root@linuxeye ~]# type pwd
pwd is a shell builtin
[root@linuxeye ~]# type cat
cat is /usr/bin/cat
[root@linuxeye ~]# pwd
/root
[root@linuxeye ~]# ls linuxeye*
linuxeye.pem  linuxeye.txt
[root@linuxeye ~]# cat linuxeye.txt
linuxeye
[root@linuxeye ~]# hash -l #顯示hash表
builtin hash -p /usr/bin/cat cat
builtin hash -p /usr/bin/ls ls
[root@linuxeye ~]# type cat
cat is hashed (/usr/bin/cat)
[root@linuxeye ~]# hash -r #清除hash表
[root@linuxeye ~]# type cat
cat is /usr/bin/cat

從上面操做能夠看出。hash表不存放系統內置命令。

 

 

Linux如何查看本機及別人的MAC地址

一、查看本身的MAC地址:使用ifconfig
[root@zhanghuimeng ~]# ifconfig | grep HW
eth0      Link encap:Ethernet  HWaddr 00:50:56:3D:79:71
 
二、查看已知IP地址的MAC地址:使用ping+arp
[root@zhanghuimeng ~]# ping 192.168.70.1
[root@zhanghuimeng ~]# arp -n
Address                  HWtype  HWaddress           Flags Mask            Iface
192.168.70.2             ether   00:50:56:f7:ae:6a   C                     eth0
192.168.70.1             ether   00:50:56:c0:00:01   C                     eth0

 


linux查看設備命令

系統

# uname -a               # 查看內核/操做系統/CPU信息
 # head -n 1 /etc/issue   # 查看操做系統版本 
# cat /proc/cpuinfo      # 查看CPU信息
 # hostname               # 查看計算機名 
# lspci -tv              # 列出全部PCI設備
 # lsusb -tv              # 列出全部USB設備 
# lsmod                  # 列出加載的內核模塊
 # env                    # 查看環境變量

資源

# free -m                # 查看內存使用量和交換區使用量 
# df -h                  # 查看各分區使用狀況 
# du -sh <目錄名>        # 查看指定目錄的大小 
# grep MemTotal /proc/meminfo   # 查看內存總量
 # grep MemFree /proc/meminfo    # 查看空閒內存量
# uptime                 # 查看系統運行時間、用戶數、負載 
# cat /proc/loadavg      # 查看系統負載

磁盤和分區

# mount | column -t      # 查看掛接的分區狀態 
# fdisk -l               # 查看全部分區 
# swapon -s              # 查看全部交換分區
 # hdparm -i /dev/hda     # 查看磁盤參數(僅適用於IDE設備) 
# dmesg | grep IDE       # 查看啓動時IDE設備檢測情況

網絡

# ifconfig               # 查看全部網絡接口的屬性
 # iptables -L            # 查看防火牆設置 
# route -n               # 查看路由表 
# netstat -lntp          # 查看全部監聽端口 
# netstat -antp          # 查看全部已經創建的鏈接
 # netstat -s             # 查看網絡統計信息

進程

# ps -ef                 # 查看全部進程 
# top                    # 實時顯示進程狀態

用戶

# w                      # 查看活動用戶 
# id <用戶名>            # 查看指定用戶信息 
# last                   # 查看用戶登陸日誌 
# cut -d: -f1 /etc/passwd   # 查看系統全部用戶 
# cut -d: -f1 /etc/group    # 查看系統全部組 
# crontab -l             # 查看當前用戶的計劃任務

服務

# chkconfig --list       # 列出全部系統服務 
# chkconfig --list | grep on    # 列出全部啓動的系統服務

程序

# rpm -qa                # 查看全部安裝的軟件包

 

經常使用命令整理以下:
查看主板的序列號: dmidecode | grep -i ’serial number’

用硬件檢測程序kuduz探測新硬件:service kudzu start ( or restart)

查看CPU信息:cat /proc/cpuinfo [dmesg | grep -i 'cpu'][dmidecode -t processor]

查看內存信息:cat /proc/meminfo [free -m][vmstat]

查看板卡信息:cat /proc/pci

查看顯卡/聲卡信息:lspci |grep -i ‘VGA’[dmesg | grep -i 'VGA']

查看網卡信息:dmesg | grep -i ‘eth’[cat /etc/sysconfig/hwconf | grep -i eth][lspci | grep -i 'eth']
<!--more-->
查看PCI信息:lspci (相比cat /proc/pci更直觀)

查看USB設備:cat /proc/bus/usb/devices

查看鍵盤和鼠標:cat /proc/bus/input/devices

查看系統硬盤信息和使用狀況:fdisk & disk – l & df

查看各設備的中斷請求(IRQ):cat /proc/interrupts

查看系統體系結構:uname -a

查看及啓動系統的32位或64位內核模式:isalist –v [isainfo –v][isainfo –b]

dmidecode查看硬件信息,包括bios、cpu、內存等信息

測定當前的顯示器刷新頻率:/usr/sbin/ffbconfig –rev \?

查看系統配置:/usr/platform/sun4u/sbin/prtdiag –v

查看當前系統中已經應用的補丁:showrev –p

顯示當前的運行級別:who –rH

查看當前的bind版本信息:nslookup –class=chaos –q=txt version.bind

dmesg | more 查看硬件信息
lspci 顯示外設信息, 如usb,網卡等信息
lsnod 查看已加載的驅動
lshw
psrinfo -v 查看當前處理器的類型和速度(主頻)
prtconf -v 打印當前的OBP版本號
iostat –E 查看硬盤物理信息(vendor, RPM, Capacity)
prtvtoc /dev/rdsk/c0t0d0s 查看磁盤的幾何參數和分區信息
df –F ufs –o i 顯示已經使用和未使用的i-node數目
isalist –v

對於「/proc」中文件可以使用文件查看命令瀏覽其內容,文件中包含系統特定信息:
Cpuinfo 主機CPU信息
Dma 主機DMA通道信息
Filesystems 文件系統信息
Interrupts 主機中斷信息
Ioprots 主機I/O端口號信息
Meninfo 主機內存信息
Version Linux內存版本信息

備註: proc – process information pseudo-filesystem 進程信息假裝文件系統

RPM

    在Linux 操做系統中,有一個系統軟件包,它的功能相似於Windows裏面的「添加/刪除程序」,可是功能又比「添加/刪除程序」強不少,它就是 Red Hat Package Manager(簡稱RPM)。此工具包最早是由Red Hat公司推出的,後來被其餘Linux開發商所借用。因爲它爲Linux使用者省去了不少時間,因此被普遍應用於在Linux下安裝、刪除軟件。下面就 給你們介紹一下它的具體使用方法。

1.咱們獲得一個新軟件,在安裝以前,通常都要先查看一下這個軟件包裏有什麼內容,假設這個文件是:Linux-1.4-6.i368.rpm,咱們能夠用這條命令查看:

rpm -qpi Linux-1.4-6.i368.rpm

系統將會列出這個軟件包的詳細資料,包括含有多少個文件、各文件名稱、文件大小、建立時間、編譯日期等信息。

2.上面列出的全部文件在安裝時不必定所有安裝,就像Windows下程序的安裝方式分爲典型、徹底、自定義同樣,Linux也會讓你選擇安裝方式,此時咱們能夠用下面這條命令查看軟件包將會在系統裏安裝哪些部分,以方便咱們的選擇:

rpm -qpl Linux-1.4-6.i368.rpm

3. 選擇安裝方式後,開始安裝。咱們能夠用rpm-ivh Linux-1.4-6.i368.rpm命令安裝此軟件。在安裝過程當中,若系統提示此軟件已安裝過或因其餘緣由沒法繼續安裝,但若咱們確實想執行安裝命 令,能夠在 -ivh後加一參數「-replacepkgs」:

rpm -ivh -replacepkgs Linux-1.4-6.i368.rpm

4.有時咱們卸載某個安裝過的軟件,只需執行rpm-e <文件名>;命令便可。

5.對低版本軟件進行升級是提升其功能的好辦法,這樣能夠省去咱們卸載後再安裝新軟件的麻煩,要升級某個軟件,只須執行以下命令:rpm -uvh <文件名>;,注意:此時的文件名必須是要升級軟件的升級補丁

6. 另一個安裝軟件的方法可謂是Linux的獨到之處,同時也是RMP強大功能的一個表現:經過FTP站點直接在線安裝軟件。當找到含有你所需軟件的站點並 與此網站鏈接後,執行下面的命令便可實如今線安裝,譬如在線安裝Linux-1.4-6.i368.rpm,能夠用命令:

rpm -i ftp://ftp.pht.com/pub/linux/redhat/...-1.4-6.i368.rpm

7. 在咱們使用電腦過程當中,不免會有誤操做,若咱們誤刪了幾個文件而影響了系統的性能時,怎樣查找到底少了哪些文件呢?RPM軟件包提供了一個查找損壞文件的 功能,執行此命令:rpm -Va便可,Linux將爲你列出全部損壞的文件。你能夠經過Linux的安裝光盤進行修復。

8.Linux系統中文件繁多,在使用過程當中,不免會碰到咱們不認識的文件,在Windows下咱們能夠用「開始/查找」菜單快速判斷某個文件屬於哪一個文件夾,在Linux中,下面這條命令行能夠幫助咱們快速斷定某個文件屬於哪一個軟件包:

rpm -qf <文件名>;

9.當每一個軟件包安裝在Linux系統後,安裝文件都會到RPM數據庫中「報到」,因此,咱們要查詢某個已安裝軟件的屬性時,只需到此數據庫中查找便可。注意:此時的查詢命令不一樣於1和8介紹的查詢,這種方法只適用於已安裝過的軟件包!命令格式:

rpm -參數 <文件名>;

 

APT-GET

apt-get update——在修改/etc/apt/sources.list或者/etc/apt/preferences以後運行該命令。此外您須要按期運行這一命令以確保您的軟件包列表是最新的。
apt-get install packagename——安裝一個新軟件包(參見下文的aptitude) 
apt-get remove packagename——卸載一個已安裝的軟件包(保留配置文件) 
apt-get --purge remove packagename——卸載一個已安裝的軟件包(刪除配置文件) 
dpkg --force-all --purge packagename 有些軟件很難卸載,並且還阻止了別的軟件的應用,就能夠用這個,不過有點冒險。 
apt-get autoclean apt會把已裝或已卸的軟件都備份在硬盤上,因此若是須要空間的話,可讓這個命令來刪除你已經刪掉的軟件 
apt-get clean 這個命令會把安裝的軟件的備份也刪除,不過這樣不會影響軟件的使用的。 
apt-get upgrade——更新全部已安裝的軟件包 
apt-get dist-upgrade——將系統升級到新版本 
apt-cache search string——在軟件包列表中搜索字符串 
dpkg -l package-name-pattern——列出全部與模式相匹配的軟件包。若是您不知道軟件包的全名,您可使用「*package-name-pattern*」。
aptitude——詳細查看已安裝或可用的軟件包。與apt-get相似,aptitude能夠經過命令行方式調用,但僅限於某些命令——最多見的有安裝和卸載命令。因爲aptitude比apt-get瞭解更多信息,能夠說它更適合用來進行安裝和卸載。
apt-cache showpkg pkgs——顯示軟件包信息。 
apt-cache dumpavail——打印可用軟件包列表。 
apt-cache show pkgs——顯示軟件包記錄,相似於dpkg –print-avail。 
apt-cache pkgnames——打印軟件包列表中全部軟件包的名稱。 
dpkg -S file——這個文件屬於哪一個已安裝軟件包。 
dpkg -L package——列出軟件包中的全部文件。 
apt-file search filename——查找包含特定文件的軟件包(不必定是已安裝的),這些文件的文件名中含有指定的字符串。apt-file是一個獨立的軟件包。您必須 先使用apt-get install來安裝它,而後運行apt-file update。若是apt-file search filename輸出的內容太多,您能夠嘗試使用apt-file search filename | grep -w filename(只顯示指定字符串做爲完整的單詞出如今其中的那些文件名)或者相似方法,例如:apt-file search filename | grep /bin/(只顯示位於諸如/bin或/usr/bin這些文件夾中的文件,若是您要查找的是某個特定的執行文件的話,這樣作是有幫助的)。

 

 

ubuntu查看版本命令
方法一:
在終端中執行下列指令: cat /etc/issue
方法二:
使用 lsb_release 命令也能夠查看 Ubuntu 的版本號,與方法一相比,內容更爲詳細。
執行指令以下: sudo lsb_release -a
方法三:
打開「系統監視器」,選擇「系統」
Ubuntu查看版本命令
1. lshw
lshw命令顯示詳細硬件信息。
若是要用概要方式顯示,能夠加上short參數:lshw-short
要顯示指定硬件信息,加上class(或C)參數:lshw -classmemory
2. sysstat
監測系統性能及效率的一組工具,這些工具對於咱們收集系統性能數據,
好比CPU使用率、硬盤和網絡吞吐數據。
3. lspci -v (相比cat/proc/pci更直觀)
查看PCI信息,lspci 是讀取 hwdata 數據庫。
4. uname -a
查看系統體系結構。
5. dmidecode
查看硬件信息,包括bios、cpu、內存等信息
6. dmesg
顯示內核緩衝區系統控制信息,如系統啓動時的信息會寫到/var/log/。
注:dmesg 工具並非專門用來查看硬件芯片組標識的工具,
但經過這個工具能讓咱們知道機器中的硬件的一些參數;由於系統在啓動的時候,
會寫一些硬件相關的日誌到 /var/log/message* 或/var/log/boot* 文件中。
7. lshal 和hal-device-manager
8. 查看 /proc
對於「/proc」中文件可以使用文件查看命令瀏覽其內容,文件中包含系統特定信息:
Cpuinfo 主機CPU信息
Dma 主機DMA通道信息
Filesystems 文件系統信息
Interrupts 主機中斷信息
Ioprots 主機I/O端口號信息
Meninfo 主機內存信息
Version Linux內存版本信息
查看CPU信息:cat /proc/cpuinfo 查看板卡信息:cat /proc/pci 查看內存信息:cat/proc/meminfo 查看USB設備:cat /proc/bus/usb/devices 查看鍵盤和鼠標:cat/proc/bus/input/devices 查看各設備的中斷請求(IRQ):cat/proc/interrupts
主板信息:
sudo demidecode | grep -i ‘serial number’

CPU信息:
cat /proc/cpuinfo
dmesg | grep -i ‘cpu’
sudo dmidecode -t processor

硬盤信息:
查看分區狀況:
sudo fdisk -l

查看大小狀況:
df -h

查看使用狀況:
du -h
sudo hdparm -I /dev/sda
dmesg | grep sda

內存信息:
cat /proc/meminfo
dmesg | grep mem
free -m
vmstat
sudo dmidecode | grep -i mem

網卡信息:
dmesg | grep -i ‘eth’
lspci | grep -i ‘eth’

ethtool -i eht0
ethhool -k eth0
ethtool -g eth0

查看鼠標和鍵盤:
cat /proc/bus/input/devices

查看各設備的中斷請求(IRQ):
cat /proc/interrupts

顯卡信息:
lspci | grep -i ‘VGA’
dmesg | grep -i ‘VGA’

聲卡信息:
查看聲卡型號:
lspci | grep -i audio

查看型號ac97的聲卡驅動模塊:
modprobe -l | grep ac97

查看聲卡信息:
cat /proc/asound/cards

查看alsa-utils本:
alsactl -v

查看內核alsa版本:
cat /proc/asound/version

聲卡信息:
aplay -l

硬件信息之聲卡:
sudo lshw -C sound

模塊狀態之聲音:
lsmod | grep -i snd

alsa音頻配置:
alsamixer

其餘命令:
dmesg
lspci
mpstat(先安裝sysstat: sudo spt-get install sysstat)  

 

 
 
 
 

[ -a FILE ] 若是 FILE 存在則爲真。

[ -b FILE ] 若是 FILE 存在且是一個塊特殊文件則爲真。

[ -c FILE ] 若是 FILE 存在且是一個字特殊文件則爲真。

[ -d FILE ] 若是 FILE 存在且是一個目錄則爲真。

[ -e FILE ] 若是 FILE 存在則爲真。

[ -f FILE ] 若是 FILE 存在且是一個普通文件則爲真。

[ -g FILE ] 若是 FILE 存在且已經設置了SGID則爲真。

[ -h FILE ] 若是 FILE 存在且是一個符號鏈接則爲真。

[ -k FILE ] 若是 FILE 存在且已經設置了粘制位則爲真。

[ -p FILE ] 若是 FILE 存在且是一個名字管道(F若是O)則爲真。

[ -r FILE ] 若是 FILE 存在且是可讀的則爲真。

[ -s FILE ] 若是 FILE 存在且大小不爲0則爲真。

[ -t FD ] 若是文件描述符 FD 打開且指向一個終端則爲真。

[ -u FILE ] 若是 FILE 存在且設置了SUID (set user ID)則爲真。

[ -w FILE ] 若是 FILE 若是 FILE 存在且是可寫的則爲真。

[ -x FILE ] 若是 FILE 存在且是可執行的則爲真。

[ -O FILE ] 若是 FILE 存在且屬有效用戶ID則爲真。

[ -G FILE ] 若是 FILE 存在且屬有效用戶組則爲真。

[ -L FILE ] 若是 FILE 存在且是一個符號鏈接則爲真。

[ -N FILE ] 若是 FILE 存在 and has been mod若是ied since it was last read則爲真。

[ -S FILE ] 若是 FILE 存在且是一個套接字則爲真。

[ FILE1 -nt FILE2 ] 若是 FILE1 has been changed more recently than FILE2, or 若是 FILE1 exists and FILE2 does not則爲真。

[ FILE1 -ot FILE2 ] 若是 FILE1 比 FILE2 要老, 或者 FILE2 存在且 FILE1 不存在則爲真。

[ FILE1 -ef FILE2 ] 若是 FILE1 和 FILE2 指向相同的設備和節點號則爲真。

[ -o OPTIONNAME ] 若是 shell選項 「OPTIONNAME」 開啓則爲真。

[ -z STRING ] 「STRING」 的長度爲零則爲真。

[ -n STRING ] or [ STRING ] 「STRING」 的長度爲非零 non-zero則爲真。

[ STRING1 == STRING2 ] 若是2個字符串相同。 「=」 may be used instead of 「==」 for strict POSIX compliance則爲真。

[ STRING1 != STRING2 ] 若是字符串不相等則爲真。

[ STRING1 < STRING2 ] 若是 「STRING1」 sorts before 「STRING2」 lexicographically in the current locale則爲真。

[ STRING1 > STRING2 ] 若是 「STRING1」 sorts after 「STRING2」 lexicographically in the current locale則爲真。

[ ARG1 OP ARG2 ] 「OP」 is one of -eq, -ne, -lt, -le, -gt or -ge. These arithmetic binary operators return true if 「ARG1」 is equal to, not equal to, less than, less than or equal to, greater than, or greater than or equal to 「ARG2」, respectively. 「ARG1」 and 「ARG2」 are integers.

相關文章
相關標籤/搜索