1. 程式人生 > >linux命令學習記錄

linux命令學習記錄

gre 空目錄 man 頁面 遠程服務 -h rm -rf 帳號 消失

一、文件處理命令

1.建立目錄:mkdir

格式:mkdir -p [文件名]

-p:遞歸創建

例如:mkdir test --在當前目錄下創建一個test文件夾

        mkdir -p test/lxw    --遞歸創建

2.切換所在目錄

格式:cd [目錄]

例如:cd /home/ --從當前目錄切換到根目錄的 home 文件夾下面

簡化操作:

   cd ~      --進入當前用戶的家目錄
   cd 

   cd -      --進入上次目錄

   cd ..     --進入上一級目錄

   cd .      --進入當前目錄

3.刪除目錄

(1)刪除空目錄:rmdir [文件名]

格式:rmdir [文件名]

例如:rmdir test --只有空的文件才能刪除

(2)刪除文件:rm

格式:rm -rf [文件或者目錄]

-r    --刪除目錄

-f    --強制刪除

例如:rm -rf test  --無提示刪除文件夾 test

4.復制命令:cp

格式:cp [選項] [原文件名或目錄名] [目標目錄]

選項:

-r   --復制目錄

-p   --連帶文件屬性復制

-d   --如果原文件是簡介文件,則復制鏈接屬性

-a   --相當於 -pdr

例如:cp test.cfg /test/ --復制當前目錄下的test.cfg到 test文件夾下

cp -r abc/ /test/   --復制當前目錄下的abc文件夾到test文件夾下

cp -p abc/ /test/   --復制當前目錄下的abc文件夾到test文件夾下(完整復制)

cp -p abc/ /test/   --復制當前目錄下的abc文件夾到test文件夾下(完整復制,常用的)

5.剪切命令或者改名命令:mv

格式:mv [原文件名或目錄名] [目標目錄]

例如:mv abc/ /test/ --剪切abc到test文件夾下

mv abc def  --把abc文件改名為def

註意:如果目標文件在當前目錄下,則是改名,如果不在,則是剪切;

6.鏈接命令: ln

格式:ln -s 原文件 目標文件

(1)硬鏈接

例如:ln /root/abc.zip /tmp/abczip.r   --把文件abc.zip在/tmp/下創建一個名為abczip.r的硬鏈接 

(2)軟連接

例如: ln -s /home/test/wen.txt /home/wen.r    --把文件wen.txt在/home/下創建一個名為wen.r的軟連接

二、文件搜索命令

查詢目錄中的內容:ls

-a :查看全部文件,包括隱藏文件

-l :顯示詳細的信息

-h :人性化顯示

-d :查看目錄的屬性

-i:顯示文件的i節點號

查看當前文件的所在位置:pwd

1.locate:搜索速度快

格式:locate 文件名

例如:locate Linux學習筆記.txt --搜索Linux學習筆記.txt文件

註意:locate 搜索的是數據庫,新建的的文件需要更新才能找到

2.whereis :搜索命令的命令

格式:whereis [-b][-m] 命令名

-b:只查找可執行文件

-m:只查找幫助文件

註意:不寫參數查找可執行文件和幫助文件

例如:whereis ls   --查找ls命令 

      whereis -b ls --查找ls命令的可執行文件 

      whereis -m ls --查找ls 命令的幫助文件 

3.which 搜索命令的命令,如果這個命令有別名,他會找到這個別名

格式:which 命令名

例如:which ls --查找ls命令 ,並顯示出他的別名
  1. find 命令
格式:find [搜索範圍] [搜索條件]

(1) find [地址] -name [文件名] :按文件名搜索

   例如:find /home/test/ -name wen.txt    --在/home/test/下查找文件名為wen.txt的文件

   註意:如果想模糊查詢,則需要使用通配符,常見的通配符有(*:任意字符;?:任意一個字符;[]匹配任意一個中括號呢的內容,通配符通常使用英文雙引號包裹)
     
     例如:find /home/test/ -name "*.txt"      --在/home/test/下查找文件名為 .txt 結尾的文件
            
           find /home/test/ -name "wen.tx?"     --在/home/test/下查找文件名為 wen.tx 開頭,以任意一個字符結尾的文件  

           find /home/test/ -name "w[eb]n.txt"  --在/home/test/下查找文件名為 wen.txt 或者 wbn.txt 的文件


(2)find [地址] -iname [文件名]:不區分大小寫搜索,與 -name 基本相同


(3)find [地址] -user[文件名]:按所有者搜索

  例如:find /root -user root  --在 /root 下查找屬於root的文件

  ps:find /root -nouser :查找沒有所有者的文件(沒有所有者的文件,不是外來文件和內核產生的文件,就是垃圾文件,請手動刪除.)

?
(4)find [地址] -mtime 時間:按時間搜索

  -10:10天內修改的文件

  10:第10天修改的數據

  +10:10天前修改的數據

  例如:find /home/test -mtime -10 --搜索/home/test文件下 10天內修改的文件

  ps:除了可以搜索修改的數據外,還可以搜索改變屬性,訪問時間的文件(-atime:文件訪問時間;-ctime:文件屬性改變時間)


(5)find [地址] -size 文件大小:按文件大小搜索

  -25k:表示小於25KB

  25k:表示扥與25KB

  +25k:表示大於25KB

  例如:find /home -size +25k  --查找/home下大於25kb的文件

  ps:表示kb的用小寫字符k,表示兆的用大寫字符M
    
    例如:find /home -size -1M --查找/home下小於1M的文件


(6)find [地址] -inum 文件i節點:按文件節點查找

   例如:find /home -inum 2396179  --查找/home i節點為 2396179 的文件

?
(7)常見復合查詢

  -a : and邏輯與,表示兩邊都成立

  -o : or邏輯或,表示只要有一邊成立

  -exec 命令 {}\; : 對搜索的結果進行操作

  例如:find /home -size +20k -a -size -50k        --查找/home下大於20k並且小於50k的文件

            find /home -size -20k -o -size +50k  -exec ls -lh {} \; --查找/home下小於20k或者大於50k的文件,並執行 ls -lh 命令
    
            find /home -inum  2396179 -exec rm -rf {} \;        --查找/home下 i節點為 2396179 的文件,並刪除它

(8)gerp [選項] 字符串 文件名:字符串搜索命令

       -i   忽略大小寫

       -v   排除指定字符串

       例如:grep "a" a.txt    --查詢a.txt文件中的a字符串

    grep -iv "a" a.txt  --查詢a.txt文件中不包含a字符串

三、文件幫助命令 man

 格式:man [選項] 命令名

 1.基本的:man ls   --查看ls命令的幫助文檔

ps:使用 / -命令查看對應的信息  

例如:/ -h  --查看-h對應的信息

 2.查看man的幫助級別:man -f 命令名,相對應whatis

    例如:man -f ls    --查看ls的幫助級別,等同於whatis

 3.按幫助級別查看幫助:man -幫助級別 命令名 

例如:man -1 ls -- 查看級別1的ls命令的幫助

 4.查看和命令相關的所有命令:man -k 命令

ps:apropos 和man -k 用法一樣

例如:man -k ls    --查看所有和ls有關的命令

  5.其他幫助命令

(1)help命令 : 命令 --help 

    例如:ls --help    --查看ls的幫助並退出命令

(2)內部命令:help 命令 

    例如:help cd  --查看cd命令的幫助文檔

(3)詳細信息命令:info 命令

    例如:info ls  --列出ls命令的詳細命令

    ps:info中  -回車:進入子幫助頁面(帶*號的)
          
          -u:進入上層

          -n:進入下一個幫助小節

          -p:進入上一個幫助小節

          -q:退出

四、壓縮與解壓縮命令

  1.zip格式:

(1)壓縮命令:zip 壓縮文件夾名 源文件 

-r:壓縮文件

    例如:zip jp.zip jp        --壓縮文件夾jp並命名為jp.zip

              zip -r a.zip a.txt    --壓縮文件a.txt命名為a.zip

(2)解壓命令:unzip 文件名

    例如:unzip a.zip      --解壓a.zip文件


  2.gzip格式:.gz格式的壓縮源文件會消失

(1)壓縮命令:gzip 源文件名 

    例如:gzip a.txt   --壓縮a.txt並輸出a.txt,壓縮文件命名為 a.txt.gz 

        ps: 如果想不消失源文件可以用 -c 打印壓縮內容,再用>寫入文件中 
    
    例如:gzip -c a.txt > a.gz --把a.txt文件壓縮後寫入a.gz中
    
    如果想壓縮目錄可以使用 -r ,但是只能把目錄中的子文件壓縮,目錄本身不能被壓縮

(2)解壓命令:gzip -d 文件名 或者 gunzip 文件名
    
    例如:gzip -d  a.gz        --解壓a.gz文件和gunzip a.gz 一樣

    如果想要解壓目錄,使用 gzip -dr 文件目錄 ,解壓壓縮的目錄


 3.bz2格式:.bz2格式的壓縮源文件也會消失

(1)壓縮命令:bzip2 源文件 (不支持壓縮目錄)

    例如:bzip2 a.txt  --壓縮a.txt並刪除源文件

    ps:如果想保存源文件使用 -k  
    
           例如:bzip2 -k a.txt    --壓縮a.txt並保存源文件

(2)解壓命令: bzip2 -d 壓縮文件 或者bunzip2 壓縮文件

    例如:bzip2 -d a.txt.bz2   --解壓a.txt.bz2並刪除源文件和bunzip2 a.txt.bz2 效果一樣

    ps:如果想要保留源文件也是使用 -k 


 4.tar.gz格式:.tar:打包文件(常用的)

(1)壓縮命令:先打包,再壓縮

    例如:tar -cvf jp.tar jp  --打包jp目錄;
        
              gzip jp.tar      --壓縮jp.tar文件包

(2)解壓命令:先解壓壓縮包,再解壓打包

    例如:gzip -d jp.tar.gz    --解壓jp.tar.gz壓縮包,得到jp.tar打包文件

              tar -xvf  jp.tar      --解包jp.tar,得到文件目錄

ps:

<1>tar格式的文件可以打包成任意格式的壓縮包。

<2>tar.gz格式的壓縮可以直接壓縮,使用 :tar -zcvf 壓縮包名.tar.gz 源文件名 格式
    
    例如:tar -zcvf jp.tar.gz jp   --直接把目錄jp壓縮為.tar.gz格式的壓縮包

              tar -zxvf jp.tar.gz   --解壓.tar.gz格式的壓縮包

<3>tar.bz2格式的壓縮也可以直接壓縮,使用:tar -jcvf 壓縮包名.tar.bz2 源文件名  格式

    例如:tar -jcvf jp.tar.bz2 jp  --直接把目錄jp壓縮為.tar.bz2格式的壓縮包
    
              tar -jxvf jp.tar.bz2  --解壓.tar.bz2格式的壓縮包
      
<4>多文件壓縮:只要把文件跟在後面即可

    例如:tar -jcvf jpa.tar.bz2 jp a.txt       --把jp目錄和a.txt文件壓縮成jpa.tar.bz2壓縮包

    ps:也可以指定壓縮到那個目錄下,只要在文件名前加一個目錄名即可
        
        例如:tar -jcvf /home/jpa.tar.bz2 jp a.txt     --把jp目錄和a.txt文件壓縮成jpa.tar.bz2壓縮包並保存到home文件夾下面

<5>解壓到指定位置:-C 目錄

    例如: tar -jxvf jp.tar.bz2 -C /home/  --把文件jp壓縮為.tar.bz2格式的壓縮包,並放到home文件夾下面

<6>查看壓縮包:tar -ztvf 壓縮包名 (查看.tar.gz格式的壓縮包)
    
              tar -jtvf 壓縮包名 (查看.tar.bz2格式的壓縮包)

    例如:tar -ztvf jp.tar.gz  --查看jp.tar.gz壓縮包下的目錄

              tar -jtvf jp.tar.bz2  --查看jp.tar.bz2壓縮包下的目錄

五、關機和重啟命令

  1.shutdown命令 :shutdown [選項] 時間

-h:關機

-r:重啟
 
-c:清除上一個命令

例如:  shutdown -h now    --表示現在關機

         shutdown -r 05:20  --表示在林晨5:20分重啟(註意:這樣會使終端卡住,一直到重啟為止,我們需要把它放到後臺去,在時間後面加上 & 符號即可)

         shutdown  -c       --終止關機或者重啟命令


 2.其他的關機命令(註意,遠程服務器一般不要關機,直接重啟即可)

halt:命令會先檢測系統的runlevel,若runlevel為0或6,則關閉系統,否則即調用shutdown來關閉系統。

poweroff:命令用來關閉計算機操作系統並且切斷系統電源。

init 0 :使用系統的運行級別來關機


 3.其他的重啟命令:

reboot:命令用來重新啟動正在運行的Linux操作系統。

init 6:使用系統的運行級別來重啟。


 ps:系統的運行級別

# 0 - 停機(千萬不能把initdefault 設置為0 )

# 1 - 單用戶模式(安全模式)

# 2 - 多用戶,沒有 NFS(沒有共享服務的)

# 3 - 完全多用戶模式(標準的運行級-字符界面:推薦的)

# 4 - 沒有用到

# 5 - X11 (xwindow圖形界面)

# 6 - 重新啟動 (千萬不要把initdefault 設置為6 )

我們可以用 init 來切換運行級別。例如:init 5  --進入圖形界面  ;  init  3  --進入字符界面

 4.退出登錄命令:

logout:用於退出當前登錄的Shell,logout指令讓用戶退出系統,其功能和login指令相互對應。


exit:退出控制臺,對於多層shell,用於逐層退出,到最頂層shell,作用就和logout相同。 

六、其他常用命令

 1.掛載命令:mount (一般只有實體機的linux操作系統才用得到,服務器等一般通過網絡傳輸)

-l:顯示已加載的文件系統列表和不寫一樣;

-a:自動掛載分區

格式:mount [ -t 文件系統] [-o特殊選項] 設備文件名 掛載點 

掛載光盤的步驟:

       (1)創建掛載目錄:mkdir /mnt/cdrom

       (2)掛載光盤:mount /dev/sr0 /mnt/cdrom(光盤的默認文件系統-t為iso9660,所以可以省略)

       (3)訪問光盤:cd /mnt/cdrom 進入掛載點即可訪問光盤裏的數據

掛載u盤的步驟:(因為U盤是和硬盤一樣,所以我們需要用 fdisk -l 找到他的設備名,這裏我們假設U盤的設備名為sdb1)

      (1)創建掛載目錄:mkdir /mnt/usb

      (2)掛載U盤:mount -t vfat /dev/sdb1 /mnt/usb(linux不支持ntfs文件系統)

      (3)訪問U盤:cd /mnt/usb

  2.卸載命令:umount 設備名或者文件掛載點

例如:umount /mnt/cdrom

  3. w:用於顯示已經登陸系統的用戶列表,並顯示用戶正在執行的指令。
 
  4. who:列出登入帳號,使用的終端機,登入時間以及從何處登入或正在使用哪個X顯示器。

  5. last:用於顯示用戶最近登錄信息。單獨執行last命令,它會讀取/var/log/wtmp的文件,並把該給文件的內容記錄的登入系統的用戶名單全部顯示出來。

  6. lastlog:用於顯示系統中所有用戶最近一次登錄信息。

  7.數據庫更新命令:updatedb 

  8.查看環境變量:echo $PATH

  9.查看ip:ifconfig 

常見一級目錄

/ 根目錄

/bin 存放必要的命令

/boot 存放內核以及啟動所需的文件等

/dev 存放設備文件

/etc 存放系統的配置文件

/home 用戶文件的主目錄,用戶數據存放在其主目錄中

/lib 存放必要的運行庫

/mnt 存放臨時的映射文件系統,我們常把軟驅和光驅掛裝在這裏的floppy和cdrom子目錄下。

/proc 存放存儲進程和系統信息

/root 超級用戶的主目錄

/sbin 存放系統管理程序

/tmp 存放臨時文件的目錄

/usr 包含了一般不需要修改的應用程序,命令程序文件、程序庫、手冊和其它文檔。

/var 包含系統產生的經常變化的文件

快捷鍵:

ctrl + L  --清屏

linux命令學習記錄