16、自學——Linux的學習進度與任務【vim編輯器及檔案測試】

來源:互聯網
上載者:User

標籤:部分   ash   令行   linu   編輯   表達   跳轉   大小   pre   

vim編輯器及檔案測試

 

vim編輯器

    在Linux中,使用文字檔來儲存設定檔

    1、幾種基本的模式:

          編輯模式:鍵盤操作通常被解析為編輯命令:
          輸入模式:輸入模式
          末行模式:vim的內建的命令列介面,執行vim內建命令

     2、模式之間的切換:

          編輯模式-->輸入模式(從編輯模式進入到輸入模式)

            i:當前游標所在處輸入內容
            I: 在當前游標所在行的行首

            a:在當前游標所在處的後面
            A:在當前游標所在行的行尾輸入

            o:在游標所在行的下方新增一行空白行輸入
            O:在游標所在行的上方新增一行空白行輸入

          輸入模式-->編輯模式(從輸入模式進入編輯模式)

            ESC

          編輯模式-->末行模式(末行模式只能從編輯模式進入)

             :

          末行模式-->編輯模式(末行模式進入編輯模式)

            ESC,ESC(連按兩次)

    3、vim命令的使用格式

         vim [options] /path/to/file...

            退出:(一般在末行模式下進行)
              :q!強制退出,不儲存並退出(中間沒有空格)【命令之間沒有空格】
              :wq 儲存修改並退出
              :x,儲存並退出

            編輯模式下的退出
            編輯模式:ZZ,儲存退出

            開啟:(一次可以開啟多個);然後在末行模式下進行切換,
                多檔案跳轉
                  :next 下一個
                  :prev 上一個
                  :first 第一個
                  :last 最後一個
                  :qall 退出所有的檔案
                  :wqall 修改並退出多個檔案

            分隔視窗開啟多個檔案:
                  -o:水平分隔
                    ctrl+w,左右箭頭
                    進入下面的視窗:Ctrl+w,向下的箭頭

                  -O:垂直分隔
                    ctrl+w,上下箭頭
                    進入右邊的視窗 Ctrl+w,向右的箭頭

                  +[#]:開啟檔案後在第#號行首
                  +:開啟檔案後在最後一行
            游標移動:
              單字元移動:
                  h:左
                  l:右
                  j:下
                  k:上
                  可以和數字組合(數字在前,字母在後)

              單詞間移動:
                  w:調至下一個單詞的詞首
                  b:當前或前一個的詞首
                  e:當前或下一個詞的詞尾

              行內移動:
                  0:絕對行首     (此處是數值零)
                  ^:第一個非空白字元(行首錨定符)
                  $:絕對行尾    (行尾錨定符)

              句子間移動:
                  ):上一句
                  (: 下一句

              段落間移動:
                  }:上一段
                  {:下一段


              行間移動:
                  #G:第幾行
                  G:最後一行
                  1G:第一行


          編輯操作:
             x:刪除游標所在處的字元
            #x:刪除游標所在處向後的#個字元
             r:替換游標所在處的字元

            d:刪除命令
              結合游標跳轉命令使用
              %:全部刪除
              dd:刪除一行
              #dd:刪除所在行後的#行

          末行模式:範圍定界
              start,end:可以使用絕對定界,也可以使用相對定界
                   .:表示當前行
                   $:最後一行
                 .,$-2:倒數第3行

              /pat1(模式)/,/pat2/:起始處為游標所在行
              從第一次被模式1匹配到的行開始,到第一次被模式2匹配到的行結束,中間的所有行


          c:改變(替換)
              跟d一樣操作(最後轉換成輸入模式)

          y:yank,複製
              跟d一樣操作

          p:paste 粘貼
            複製或刪除的是整行
              (小寫)p:當前行的下一行
              (大寫)P:當前行的上一行
            複製或刪除的為非整行
              (小寫)p:粘貼在游標所在字元的後面
              (大寫)P: 粘貼在游標所在字元的前面

          撤銷編輯:
              u:undo
              #u:最近50次操作

              撤銷此前的撤銷操作:
                ctrl+r

              重複執行此前的命令:
                .

          翻屏:
              ctrl+f:向檔案尾部翻一屏
              ctrl+b:向檔案首部翻一屏
              ctrl+d:向檔案尾部翻半屏
              ctrl+u:向檔案首部翻半屏
              Enter:下一行
                k :上一行

          尋找:
              /keyword
              ?keyword
              n:
              N:
              支援Regex
              :set nohlsearch 關閉高亮顯示,對當前shell有效

    4、vim的可視化模式

        編輯模式:
            v: 按照游標走過的地區選取項目
            V:選取矩形塊

        開啟多個檔案,分視窗:
             vim -o
             vim -O
             Ctrl+w, 上下箭頭

           分割當前視窗(平均分割):
             Ctrl+w, s
             Ctrl+w, v

          視窗屬性的定義:
             :set nu :顯示行號
               :set nonu :不顯示行號

             :set ai 自動縮排
             :set noai

             :set ic忽略大小寫
             :set noic

             :set sm (show match)顯示匹配(對應)的括弧
             :set nosm

          文法高亮:
             :syntax on
             :syntax off

          搜尋高亮:
             :set hlsearch
             :set nohlsearch

    5、vim的設定檔:
        全域:/etc/vimrc
        個人:~/.vimrc

          尋找替換:
            :地址定界s/尋找模式/替換為的內容/gi
                g:全域替換(global)
                i:不區分大小寫(ignore-case)
            :地址定界[email protected]尋找模式@替換為的內容@gi

            &:用於在替換為的內容部分中引用前面匹配到的所有內容


bash的檔案測試
        [ 測試檔案 ]
        [[ 測試檔案 ]]
        test  測試檔案

            單目測試:
                -e /path/to/file :測試檔案是否存在
                -a /path/to/file :測試檔案是否存在
                -f /path/to/file: 測試是否為普通檔案
                -d /path/to/somefile: 測試是否為目錄檔案
                -b /path/to/somefile : 測試檔案是否存在並且是否為一個塊裝置檔案
                -c /path/to/somefile : 測試檔案是否存在並且是否為一個字元裝置檔案
                -h|-L /path/to/somefile : 測試檔案是否存在並且是否為符號連結檔案
                -p /path/to/somefile : 測試檔案是否存在並且是否為管道檔案:
                -S /path/to/somefile : 測試檔案是否存在並且是否為通訊端檔案:
                -r /path/to/somefile: 測試其有效使用者是否對此檔案有讀取許可權
                -w /path/to/somefile: 測試其有效使用者是否對此檔案有寫入權限
                -x /path/to/somefile: 測試其有效使用者是否對此檔案有執行許可權
                -s /path/to/somefile: 測試檔案是否存在並且不空

            雙目測試:

                file1 -nt file2 :測試file1是否比file2更新一些
                file1 -ot file2 :測試file1是否比file2更老一些

      帶設定檔的指令碼:
            在指令碼中使用source命令——倒入別的檔案(即將另外的檔案讀入)
            寫指令碼時可以使用設定檔
            設定檔只有存在,且目前使用者擁有讀許可權才能夠將其載入進去
            [ -r 設定檔 ] && source 設定檔




16、自學——Linux的學習進度與任務【vim編輯器及檔案測試】

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.