後端程序員必會經常使用Linux命令總結

1. 調整終端窗口大小: ctrl + '-'  縮小, ctrl + shift + '='  放大。linux

2. command --help 查詢命令詳細 或者 man command正則表達式

3.ls命令,查看文件夾下的文件:shell

  -a  顯示當前文件夾全部文件,包括隱藏文件windows

  -l   以列表的形式顯示文件詳情   drwxr-xr-x   2 root root 48 2013-11-27 16:34 test/bash

    格式爲: 文件類型('d':文件夾,'-':文件,'b':設備文件)+ 文件讀寫(分別爲USER,GROUP,OTHER的權限   r:可讀,w:可寫,x:可執行)服務器

         硬連接數(有多少種方式能夠訪問)less

         文件擁有着ssh

         文件所屬組ui

         文件大小加密

         文件最後修改時間

         文件目錄

  ls h*  查找當前目錄以h開頭的文件。

   還包括支持ls h? ,*h, [a-f]這樣的正則表示狀況。 

4.cd命令

  cd + .. 進入上級命令

  cd + ~ 返回家命令 (直接cd也能夠)

  cd + '-'  切換最近兩個目錄

5.touch命令建立文件

  文件若是已經存在,則會修改文件最後修改日期

6.mkdir建立目錄

  -p 建立多級目錄 mkdir -p a/b/c/d 

7.rm命令

  -r 遞歸裏面的文件能夠刪除文件夾 

  -f 不顯示提示信息

8.cp複製命令

  cp 原文件 目標路徑

  -i 如有覆蓋是會詢問

  -r 複製文件夾時會複製文件夾全部內容

9.mv移動命令

  -i 覆蓋前會詢問

  mv 源文件 目標路徑

  mv 原文件名 新文件名  能夠重命名文件

10.tree命令顯示當前文件夾結構

  -d 只顯示文件夾

11. cat查看文件命令,一次性查看全部內容

  -b 對非空行進行編號

  -n 對全部行編號

12. more,less查看文件命令,分頁查看

  more會以一頁一頁的顯示方便使用者逐頁閱讀,而最基本的指令就是按空白鍵(space)就往下一頁顯示,按 b 鍵就會往回(back)一頁顯示,並且還有搜尋字串的功能 。more命令從前向後讀取文件,所以在啓動時就加載整個文件。

  less 與 more 相似,但使用 less 能夠隨意瀏覽文件,而 more 僅能向前移動,卻不能向後移動,並且 less 在查看以前不會加載整個文件。

13. grep搜索文本命令

  grep h text 在text中查看包含h的內容

  -n 顯示行號

  -v 不包含h的行

  支持正則表達式:^,$

14.echo命令,顯示參數一般會和重定向一同使用

15.重定向

  Linux容許將命令執行結果重定向到一個文件,能夠將本應顯示在終端上的內容追加到指定文件中

  > 表示輸出,會覆蓋原有的內容

  >> 表示追加,會將內容追加到已有文件的末尾

16.關機或重啓 shutdown ; reboot

  shutdown -r 重啓

  shutdown 選項 時間   設定多長時間後關閉     

    shutdown 20:35   

17 ssh基礎

  用戶經過SSH客戶端能夠鏈接到運行了SSH服務器的遠程機器上,傳輸的數據是加密和壓縮的。

   ssh [-p port] user@remote

  port是ssh監聽端口,若是不指定,默認值爲22

  user 遠程機器上的用戶名,不指定默認爲當前用戶

  remote 是遠程機器上的地址 能夠是IP 或 域名

  SSH高級

    SSH 鏈接信息都會保存在家目錄下的 .SSH文件夾裏

    免密碼登陸

      配置公鑰 執行ssh-keygen 便可生成SSH鑰匙,一路回車

      上傳公鑰到服務器 執行ssh-copy-id -p port user@remote 讓遠程服務器記住公鑰

    配置別名

      若是須要ssh mac 代替 ssh -p port user@remote,須要在建立~/.ssh/config並追加如下內容:

        Host mac

        HostName ip地址

        User  username

        Port  22

      保存以後便可使用ssh mac來遠程鏈接

18 scp 在linux下遠程拷貝文件的命令(unix和linux之間文件傳輸信)

  把本地當前目錄下的文件複製到遠程:scp -P port 源文件 user@remote: url地址/文件名

  把遠程目錄下的文件複製到當前目錄下: scp -P port  user@remote: url地址/文件名  文件名

  加上-r 選項能夠傳送文件夾

19 filezilla (windows和linux之間文件傳輸)默認端口21

20 chmod 修改用戶/組對文件/目錄的權限

  chmod +/-rwx 文件名|目錄名

  目錄若是沒有可執行 文件就沒法對其使用終端命令

  目錄的可讀 是查看目錄裏的內容

  目錄的可寫 是能夠增刪改裏面的文件

  chmod [-R] 755 文件名/目錄名

21 執行目錄下的文件腳本

  ./ + 文件名 

22 組管理

  groupadd 組名  添加組

  groupdel  組名  刪除組

  cat/etc/group     確認組信息

  chgrp [-R] 組名 文件/目錄名  修改文件目錄的所屬組

23 用戶管理

  useradd  用戶名  添加用戶

    -m  自動在home目錄下建立家目錄

    -g 組名  指定新建用戶的組

  userdel 用戶名  刪除用戶

    -r  自動刪除用戶家目錄

  cat /etc/passwd   確認用戶信息  

    wang:x:1002:1001::/home/wang:

    用戶名:表示密碼加密的:uid:gid:用戶的全名:家目錄:登陸使用的shell

   /user/bin/passwd  適用於修改用戶密碼的程序

24 查看用戶信息

  id[用戶名]   查看用戶的UID和GID信息

  who  查看當前全部登錄的用戶列表

  whoami  查看當前登陸用戶的帳戶名

25 usermod 用來設置用戶的主組/附加組和登陸shell

  主組:在新建用戶時指定,在etc/passwd 第四列GID對應的組

  附加組:在etc/group中最後一列表示改組的用戶列表,用於指定用戶的附加權限(設置了以後需從新登陸生效)

  usermod -g 組 用戶名  修改用戶的主組

  usermod -G 組 用戶名  修改用戶的附加組

    usermod -G sudo 用戶名  將用戶添加到sudo組裏可使用sudo權限

  usermod -s /bin/bash  修改用戶的登陸shell

26 which

  which 命令  查詢命令在終端中的保存位置

27 bin和sbin

  bin  是二進制執行文件目錄,主要用於具體應用

  sbin(system binary)  是系統管理員專用的二進制代碼目錄,用於系統管理

  /user/bin  後期安裝的一些軟件

  /user/sbin  超級用戶的一些管理程序

28 切換用戶

  su - 戶名  切換用戶,而且切換到用戶的目錄 

    ‘-’   用來切換到家目錄

  exit  退出當前登陸帳戶

  su 不接用戶名  直接切換到root用戶(不推薦使用)

29 chown  修改文件擁有者

  chown 用戶名 文件/目錄

30 查詢日期和時間

  date  查看系統時間

  calendar  查看本月日曆

    -y    查看一年的日年

31 查看磁盤信息

  df [-h]  顯示磁盤剩餘空間(disk free)

  du [-h] 目錄  顯示目錄下的文件大小

32 查看進程信息

  ps  查看進程工做狀態(process status)

    a  顯示終端上的全部進程

    u  顯示進程的狀態

    x  顯示沒有控制終端的進程

  top  動態顯示系統cpu和內存使用狀況並排序

  kill [-9] PID  關閉某個進程

33 find [路徑] -name ’文件名或部分文件名'  (find的用法不少,能夠查詢文件類型,建立時間,大小等等,你們能夠用 man 或 --help查看不作過多贅述)

34 軟連接 ln -s 被鏈接的源文件路徑 目標文件名 (能夠用ls -l查看鏈接詳情)

    注意:源文件路徑應該爲絕對路徑,不然軟鏈接的文件移動時會失效

    沒有-s會建立硬連接,會佔用一樣大的空間

35 硬連接 ln 原文件的路徑 目標文件名

36 軟連接與硬連接的區別

  在linux中,文件和文件數據是分開存儲的,文件至關於指針,在系統中找到對應的文件數據,軟鏈接的文件名能夠找到被鏈接的原文件,繼而找到數據,可是若是原文件刪除了,就找不到數據了。硬連接則是至關於複製了原文件,即便原文件被刪了,指針仍是能找到數據

37 打包壓縮

  tar.gz  tar負責將不少數據進行打包

    文件打包 tar -cvf 打包文件路徑 被打包的文件 (多個文件用空格分開)

    文件解包 tar -xvf 打包文件名

  gzip負責壓縮tar文件,默認擴展名爲.tar.gz

    文件包壓縮 tar -zcvf 打包文件路徑 被打包的文件 (多個文件用空格分開)

    壓縮包解壓 tar -zxvf 打包文件名

  bzip2 默認擴展名爲.tar.bz2

    文件包壓縮 tar -jcvf 打包文件路徑 被打包的文件 (多個文件用空格分開)

    壓縮包解壓 tar -jxvf 打包文件名

       -C 指定目標目錄(若是目錄不存在會不存在)

38 軟件安裝

  sudo apt-get install 軟件名  安裝軟件

  sudo apt-get remove 軟件名  卸載軟件

  sudo apt-get upgrade    升級軟件

39 配置軟件源

  圖形界面:能夠在軟件與更新中找到國內服務器

40 VIM

  vi 文件名 + 行數   打開文件能夠跳到文件的指定行,不指定行數能夠跳到末尾

  命令模式下:(用vi打開文件時自動進入命令模式)

    數字 + 命令  命令重複的次數

    光標方向移動   h j k l

    行內移動  w 向後移動一個單詞  

          b 向前移動一個單詞

          0 回到行首

          ^ 跳到行內第一個非空格字符

          $ 跳到行尾

          gg 跳到文件首行

          G 跳到末尾

          行數 + G 或 行數 + gg  移動到對應行數

    屏幕移動  ctrl + b 向前翻頁

          ctrl + f  向後翻頁

    段落尋找  {     向前尋找段落

          }   向後尋找段落

    在行內輸入%  能夠匹配到成對的括號

    文本標記  在光標出輸入m + 一個大小寫字母標記位置,光標移動時能夠用 ' + 標記字母返回以前位置

    dd  刪除所在行(vi的刪除命令本質上是剪切操做,能夠用p粘貼刪除的文本內容)

    D  刪除到末尾

    刪除和移動的配套:

      dw  向後刪一個單詞

      d0  刪到文本開頭

      d{  刪除到段落開頭

      ndd  刪除n行

      d'a  刪除到標記位置

      d行數G  刪除到指定行數

    y(移動命令)  複製所選區域

    yy  複製當前行

    p  粘貼

    r  在光標處替換字符

    R  光標向後移,一直替換

    縮排命令(可視模式能夠總體縮進)

      >>  向右縮進4個空格

      <<  向左縮進4個空格

      。  重複上一次的縮進操做

    /str  查找字符串

      n  下一個

      N  上一個

    光標放在單詞處

      *  查找上一個一樣的字符

      #  查找下一個一樣的字符

    

  末行模式下:

    %s/被替換的str/新的str/g[c]  將文本中str總體替換 c是確認替換模式

      :%s/vivian/sky/(等同於 :g/vivian/s//sky/) 替換每一行的第一個 vivian 爲 sky 

      :%s/vivian/sky/g(等同於 :g/vivian/s//sky/g) 替換每一行中全部 vivian 爲 sky 

    在可視模式中不用輸入%

    e .  查看當前目錄其餘文件,選中按回車經行編輯 (不保存當前文件沒法切換)

    e 文件名  編輯其餘文件

    n 文件名  新建文件

    w 文件名  寫入到另外一個文件,至關於另存爲

    sp [文件名]   橫向分屏

    vsp [文件名]  縱向分屏

      ctrl + w命令下: 

        w  切換分屏窗口

        r    翻轉分屏窗口

        c  關閉當前窗口

        q  退出當前窗口

        o  關閉其餘窗口

 

  編輯模式下:

    可使用ctrl + v 粘貼其餘軟件複製的內容 

 

  可視模式下:

    v 進入可視模式   光標通過的區域都會選中

    V 可視行模式   光標所在的行會選中

      ctrl + v 可視塊模式  垂直選中

      d  刪除選中部分的文本

      u  撤銷上一次命令

      ctrl + r  與撤銷相反,回覆操做

相關文章
相關標籤/搜索