Linux 終端快捷鍵 && VIM基礎使用

来源:https://www.cnblogs.com/DeweyS/archive/2018/04/03/8700968.html
-Advertisement-
Play Games

Linux terminal shortcuts && VIM foundation use 如果你想提高對 linux 的操作,那下麵的基本操作一定不能錯過吶,非常詳細噢! 第一部分,Linux終端常用快捷鍵介紹: 說明,c 表示按鍵 “ctrl” ,s 表示按鍵 "shift" ,f 表示按鍵 ...


Linux terminal shortcuts && VIM foundation use

如果你想提高對 linux 的操作,那下麵的基本操作一定不能錯過吶,非常詳細噢!

第一部分,Linux終端常用快捷鍵介紹:

說明,c 表示按鍵 “ctrl” ,s 表示按鍵 "shift" ,f 表示按鍵 "Fn" 。實驗環境基於 Debian 系統, 考拉相信其它系統也差不多滴。

1.<c-s-t> ,新建標簽。

2.<c-s-w> ,關閉標簽。

3.<c-s-f-pgup> ,切換至前一個標簽;註意是否加 “FN” 取決於硬體主板設置;加 Shift 適用於 Debian。

4.<c-s-f-pgdn> ,切換至後一個標簽;註意是否加 “FN” 取決於硬體主板設置;加 Shift 適用於 Debian。

5.<alt-number> ,number 表示標簽數值,當標簽過多時,這樣會更快的切換至目標標簽。

6.<c-s-n> ,新建終端視窗。

7.<c-s-w> ,關閉終端視窗。

8.<c-a> ,跳到行首。

9.<c-e> ,跳到行末。

10.<c-left> ,跳至上一個單詞。

11.<c-right> ,跳至下一個單詞。

12.<c-w> ,刪除游標所在點至單詞的開始。

13.<c-u> ,刪除游標所在點至行首的內容。

14.<c-k> ,刪除游標所在點至行末的內容。

15.<c-d> ,刪除游標當前字元。

16.<c-f> ,在當前輸入中右移游標一個字元。

17.<c-b> ,在當前輸入中左移游標一個字元。

18.<alt-f> ,在當前輸入中右移游標一個單詞。

19.<alt-b> ,在當前輸入中左移游標一個單詞。

20.<c-p> ,切換至歷史記錄中的上一個命令,可一直向上切換。

21.<c-n> ,切換至歷史記錄中的下一個命令,可一直向下切換,需先使用國 <c-p> 。

22.<c-c> ,終止當前進程 ,後面那個 c 表示按鍵。

23.<c-s> ,停止終端輸入,後面那個 s 表示按鍵。

24.<c-s-c> ,複製。

25.<c-s-v> ,粘貼。

26.<c-alt-delete> ,純字元界面下關機或重啟。

 

第二部分,VIM 基礎使用:

VIM是一個強大且可擴展可自由配置的代碼編輯器,熟練的使用就可以完全摒棄IDE吶...

VIM擁有的三種模式分別是【命令模式】【ex模式】【插入模式】,打開編輯器時預設為命令模式,在任何模式下按 ESC 鍵即可返回命令模式,在命令模式下可以實現選擇,複製,粘貼,撤銷等常規操作。如需使用插入(編輯)模式,可以使用 i && a 鍵都可以進入模式;i 表示在當前字元的前面進行插入,a 表示在當前字元的後面進行插入。只需在命令模式下按 “:” 鍵即可進入ex模式,可以進行保存退出等常規操作。看完之後是不是感覺超有趣,不過講真,考拉認為當能熟練的使用終端和VIM兩者後,去使用GUI的IDE效率反而會更低下吶。個人觀點,歡迎拍磚!!!

1.命令模式下的常用操作:

o(這是字母o不是數字零伐,別看錯了) ,在當前行的下麵插入新行。

dd ,刪除整行。

yy ,將當前行的內容放入緩衝區。

yy+n ,將 n 行的內容放入緩衝區。

p ,將緩衝區中的文本複製出來,粘貼從下一行開始。

u ,撤銷上一個操作。

r ,替換當前字元,把游標移至被替換目標字元處,先按 r 鍵執行命令後,在輸入需要替換的字元即可。

/ ,查找關鍵字,被查找到的關鍵字會被高亮顯示。

. ,重覆上次修改。

zz ,重繪屏幕,當前屏幕被使用完之後,執行此命令之後,底部的一行會被顯示在屏幕正中央並連接上下文,這樣就不會耽誤你查看正在編輯的文檔了。

2.ex模式的常用操作:

w ,保存當前修改。

q ,退出,不保存。

q! ,強制退出,不保存。

x && wq ,保存並退出。

! ,後面跟一個可執行的終端命令,執行後終端會返回命令的結果來,界面會暫停至終端,只需回車即可返回至VIM編輯器。

sh ,切換至終端,可正常操作,如需返回VIM編輯器,使用組合鍵 “ ctrl - d ”即可。

3.插入模式下的常用操作:

<c-[> ,切換到命令模式,考拉知道你想問不是有 ESC 按鍵麽,但是在現代鍵盤上,ESC按鍵比較遠吶,對於考拉這種手短的就顯得麻煩了呢。

<c-o> ,切換到插入-命令模式,解釋下,就是在這個模式下可以執行一個命令模式下的命令,沒必要為了執行一個命令而切換至命令模式,那樣比較浪費時間的吶。

<c-h> ,如果你習慣了使用 backspace 鍵,就當沒有咯,作用和 backspace 一樣呢。

<c-w> ,刪除前一個單詞,對中文也有效哦,必須中間間隔一個空格;如果中文和英文在一起,那就算作兩個單詞咯。

<c-u> ,刪至行首。

<c-o>zz ,在插入-命令模式下進行屏幕重繪。

 

待考拉研究及熟悉了更多的關於VIM提升效率的方式後,會拿一篇隨筆專寫的,歡迎關註。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 前言 從今天開始進入Java基礎的複習,可能一個星期會有一篇的,我寫博文的未必都是正確的~如果有寫錯的地方請大家多多包涵並指正~ 今天要複習的是泛型,泛型在Java中也是個很重要的知識點,本文主要講解基礎的概念,並不是高深的知識,如果基礎好的同學可以當複習看看~ 一、什麼是泛型? Java泛型設計原 ...
  • 將數據處理移植到STM32上,採用串口的DMA接收模式,註意的是DMA_MODE採用Circular,DMA_BufferSize>(8*512+36=4132)(小包8個位元組,每秒512個,完整的大包36個位元組) 代碼如下: //////////////////////////////////// ...
  • 概述 New UWP Community Toolkit V2.2.0 的版本發佈日誌中提到了 RadialGauge 的調整,本篇我們結合代碼詳細講解 RadialGauge 的實現。 RadialGauge 是一種徑向儀錶盤控制項,使用圓盤面上的指針來顯示一定範圍的值,這種顯示和交互方式,讓數據可 ...
  • 在14,15年間帶領幾個不同的團隊,交付了幾個項目,在這個過程中,雖然幾個項目的業務不一樣,但是很多應用程式架構基礎性的功能卻是大同小異,例如認證、授權、請求驗證、異常處理、DTO、日誌、審計、定時任務、調度、多語言、應用配置管理等等這些功能。但是由於項目受限於進度、資源、團隊成員的背景,在當時卻難 ...
  • 1.業務場景 生產車間中使用的條碼掃描,往往一把掃描槍需要掃描不同的條碼來處理不同的業務邏輯,比如,掃描投入料工位條碼、掃描投入料條碼、掃描產出工裝條碼等,每種類型的條碼位數是不一樣,因此通過條碼長度來進行業務區分。 2.初步設計 面對此場景,能夠想到的最簡單的設計就是使用if...else if. ...
  • 概述 UWP Community Toolkit 中有一個圓形的進度條控制項 - RadialProgressBar,本篇我們結合代碼詳細講解 RadialProgressBar 的實現。 RadialProgressBar 是一種圓形的進度條控制項,進度值用圓形中的填充色的角度來表示,進度增長,填充色 ...
  • 最近做一個微信公眾號服務,有一些簡單的圖片處理功能。主要就是用戶在頁面操作,前端做一些立刻顯示的效果,然後提交保存時後端真正修改原圖。 我們的後端是 ,也就是 語言了, 本身處理圖片還是比較方便的,使用 就好,只需要添加 引用,不需要任何第三方庫。於是最近也用到一些比較常用的 圖片處理方法,就整理一 ...
  • 主題: 我將繼續介紹Identity的賬戶簡單管理,即是增刪改查。我會只介紹增加和刪除,修改功能代碼我會上傳到我的github上, 創建用戶: 1.我在Model文件夾創建一個 CreateModel.cs的文件,用來接受用戶輸入的創建賬戶的信息,代碼如下: 在這裡我用了模型驗證功能。 2.在adm ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...