02-Linux常用命令

一、常用命令

  • cat查看文件內容(從第一行顯示到最后一行)

    語法: cat 文件名    
    例如: cat main.c  
    
    
  • tac查看文件內容(從最后一行顯示到第一行)

     語法: tac 文件名    
     例如: tac main.c
    
    
  • head查看文件信息(顯示前面多少行)

    語法: 
      head 文件名      //默認顯示最前面的10行信息
      head -num 文件名字  //顯示文件的最前面幾行的信息
    例如: 
      head -7 main.c
    
    
  • tail查看文件信息(顯示后面幾行)

    語法:
      tail 文件名  //默認顯示最后10行的信息
      tail -num 文件名字  //顯示文件的最后num行信息
      tail -n文件名字  //顯示文件的最后num行信息
      tail -f   文件名  // 實時查看文件
    例如: 
      tail -7 main.c
    其他:
      | 管道,作用:將一個命令的輸出作為另一個命令的輸入
      > 輸出重定向,Linux允許將執(zhí)行結果重定向到一個文件,本應顯示在終端上的內容保存到指定文件中
      >> 標準正確輸出,同上,追加不清空
    
    

    案例:
    1、head -20 main.c > a.txt //將main.c的前20行內容寫入到a.txt文件中,如果a.txt文件不存在,會自動創(chuàng)建
    2、head -20 main.c | tail -10 //顯示head -20 main.c所查看出來的內容中的最后10行
    3、tail -3 /etc/passwd //顯示/etc/passwd目錄下最后3行信息

  • more查看文件信息
    Linux more 命令類似 cat ,不過會以一頁一頁的形式顯示,更方便使用者逐頁閱讀。
    按空白鍵(space)就往下一頁顯示;
    按 b 鍵就會往回(back)一頁顯示;
    按"Enter鍵"會逐行顯示;
    按"q"退出;

    語法:
      more 文件名
    例如:
      more main.c
    
    
  • man的使用
    通常使用man來查閱一些命令的幫助信息。
    按空格鍵 ---> 下一頁;
    按 b 鍵就會往回(back)---> 上一頁;
    按PgUp ---> 上一頁;
    按PgDn --> 下一頁;
    按q ---> 退出man幫助文檔;
    如果需要查找某個關鍵詞,和vi操作一樣。

    語法:
      man 命令名稱
    例如:
      man cp
      man mv
    
    

二、文件編輯

vi命令是Linux操作系統(tǒng)和類Linux操作系統(tǒng)中最通用的全屏幕純文本編輯器。Linux中的vi編輯器叫vim,它是vi的增強版。

  vi hello.c  // 編輯
  命令行模式:
    按i ---> 進入編輯模式
    按shift+g ---> 文件末尾    [大寫G]
    按g+g ---> 文件頭部
    按/字符串 ---> 查找功能(查找下一個,按n即可;N: 按照反方向查找[shifht+n])
    按d+d ---> 刪除一行
  編輯模式:
    按esc  ---> 進入命令模式(即退出編輯)
  底行模式(按冒號即進入該模式):
    按w ---> 只保存不退出
    按wq ---> 保存并退出
    按q --->  退出(在沒編輯文件的情況下)
    按q! ---> 強制退出(如果修改文件,不想保存時可以強制退出)
    按數(shù)字(行號) ---> 即跳到對應行中

練習:
1. 在用戶目錄下創(chuàng)建一個空的文件,注意文件后綴為.c,例如:file.c
2. 在文件中輸入以下內容:
#include<stdio.h>           
int main()
{
  printf("世界你好!\n");
  return;
}           
3. 保存并退出

vi默認是沒有顯示行號的,如何設置顯示行號?
使用vi編輯~/.vimrc文件(即vi ~/.vimrc),在該文件中加入一行set nu

三、文件權限

  • 文件權限查看

     語法: ls -l
     權限  個數(shù)  文件所屬用戶  文件所屬用戶組  大小  修改時間  名字
     drwxr-xr-x. 2 linux linux 4096 Jul 16 21:26 Desktop
     drwxr-xr-x. 2 linux linux 4096 Jul 16 21:26 Documents
     drwxr-xr-x. 2 linux linux 4096 Jul 16 21:26 Downloads
     drwxrwxr-x. 3 linux linux 4096 Jul 17 01:12 hehe
     -rw-rw-r--. 1 linux linux  132 Jul 17 20:32 hello.c
     -rw-rw-r--. 1 linux linux  863 Jul 17 19:51 main.c
     drwxr-xr-x. 3 linux linux 4096 Jul 17 01:34 Music
     drwxr-xr-x. 2 linux linux 4096 Jul 16 21:26 Pictures
     drwxr-xr-x. 2 linux linux 4096 Jul 17 01:35 Public
     drwxr-xr-x. 2 linux linux 4096 Jul 16 21:26 Templates
     drwxrwxr-x. 2 linux linux 4096 Jul 16 21:35 tmp
     drwxr-xr-x. 2 linux linux 4096 Jul 16 21:26 Videos
     drwxr-xr-x. 7 linux linux 4096 Mar 21  2014 vmware-tools-distrib
    
    
  • 文件類型

    普通文件      -
    目錄文件      d
    字符設備文件    c
    塊設備文件     b
    管道文件      p
    網絡文件      s
    鏈接文件      l
    
    

    Linux中一切皆文件!

  • 文件權限
    r:讀權限 ---> 4
    w:寫權限 ---> 2
    x:可執(zhí)行權限 ---> 1

    例如: drwxr-xr-x. 2 linux linux 4096 Jul 16 21:26 Videos
    
    // 三位表示一組權限
      |------>文件所屬者的用戶權限
      |        |----->同組用戶
      |        |       |----->其他用戶
    rwx       r-x      r-x                    a.txt
    
    
  • 權限修改

    語法:
      chmod 權限 文件名  // 單個文件操作
      chmod -R 權限 文件名  // 文件夾內所有文件以及目錄
    例如: 
      rw- rw- r--   a.txt
      chmod 764 a.txt  //將a.txt這個文件的擁有者的權限改為可讀可寫可執(zhí)行,其他權限不變
      chmod 744 a.txt   //將a.txt這個文件的同組用戶的權限改為只可讀,其他不變
    
    其他操作(不通過數(shù)字的方式來實現(xiàn)):
       chmod +x hello.c  //將hello.c增加一個可執(zhí)行的權限
       chmod -x hello.c  //將hello.c的可執(zhí)行權限去掉
    
    
  • su超級用戶權限
    在某些情況下,操作時權限不夠,就可以可以切換到超級用戶。root,即有超級用戶權限。

    sudo su  // 輸入密碼后,即進入`root`的用戶
    
    sudo su 用戶名  // 切換到其他用戶下(即退出超級用戶)
    
    

    獲取超級用戶權限(一般情況下不建議使用,避免刪錯東西,切記?。?!)
    [linux@localhost ~]$ su
    Password:
    [root@localhost linux]#

  • 關于sudo
    如果想要獲取更高的操作權限,建議在使用sudo,即在操作命令的前面添加上。

    sudo chmod 777 hello
    sudo touch hello.c
    
    

    注: sudo !!當執(zhí)行時,發(fā)現(xiàn)權限不夠時,可以用該命令,即是用sudo去執(zhí)行上一個操作命令。

四、搜索相關

  • find根據(jù)文件的屬性進行文件查找

    語法:
      find 路徑 -文件屬性 
    例如1: 
      find . -name "hello.c"  // 在當前目錄中搜索查找hello.c文件
      find / -name "*.log"  // 從整個磁盤上去搜索查找所有的.log文件
      find /etc -name "passwd"    //在/etc目錄下去搜索查找passwd文件
    
    例如2:
      find / -amin -10  //在整個磁盤上去查找最后10分鐘訪問過的文件
      find / -atime -1  //在整個磁盤上去查找最近1天訪問過的文件
      find / -empty     //在整個磁盤上去查找所有的空文件或空文件夾
    
    例如3:
      find / -size +5k  //在整個磁盤上查找文件大小大于5k的所有文件
      find / -size -5k  //在整個磁盤上查找文件大小小于5k的所有文件
    
    
  • grep 文本搜索/過濾

    語法:
      grep 搜索的字符串
      grep -n 搜索的字符串 // -n參數(shù)及順便輸出行號
    例如:
      cat main.c | grep -n "cp"
      ps -a | grep "hello
      ls -l | grep "hello"
    
    

    案例:
    1、在Windows中,創(chuàng)建一個content.txt文件
    2、將本文內容黏貼到content.txt文件 (ctrl+A)
    3、將content.txt文件傳輸?shù)絃inux中用戶目錄下的Test目錄
    4、在Linux中,將Test目錄中content.txt拷貝到/var/opt目錄下
    5、通過grep命令,找到ps所在位置對應的行號,并輸出到用戶目錄下的Test目錄的temp.txt文件中
    6、使用vi編輯器,通過temp.txt文件顯示的行號定位到對應行,將所有ps改為PS
    vi中全部替換語法: :%s/aa/bb/g // 將aa替換成bb

五、進程相關

  • ps進程查看命令
    ps非常強大的進程查看命令,是最常用的是用于監(jiān)控后臺進程的工作情況。
語法:
  ps -a  // 顯示現(xiàn)行終端機下的所有程序,包括其他用戶的程序
  ps -ef // 顯示所有進程服務  (ps -ef | )

進程號
效果演示:
1、創(chuàng)建一個文件hello.c,并在文件中輸入一下內容
#include<stdio.h>
int main()
{
        printf("hello world!\n");
        while(1);

        return ;
}

2、編譯生成可執(zhí)行文件
gcc -o hello hello.c

3、運行可執(zhí)行文件
./hello

4、ps查看進程,找到對應hello對應的PID
6082 pts/3    00:00:07 hello
即hello對應的進程號為6082

5、結束對應的進程
kill 6082

進程號PID是由系統(tǒng)分配的,并且PID是進程的唯一標識!!

  • top性能查看
    通過top命令查看系統(tǒng)的CPU、內存、運行時間、交換分區(qū)、執(zhí)行的線程等信息。通過top命令可以有效的發(fā)現(xiàn)系統(tǒng)的缺陷出在哪里。是內存不夠、CPU處理能力不夠、IO讀寫過高。top命令是Linux下常用的性能分析工具,能夠實時顯示系統(tǒng)中各個進程的資源占用狀況,類似于Windows的任務管理器。
    按q ---> 退出。

  • kill殺死進程

    語法:
      kill 進程號
    例如:
      kill 6006
    
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容