網站首頁 編程語言 正文
1.vi,vim
1.從shell提示符編輯文本文件:vi編譯器
vim是vi的升級版
2.命令:vi [文件名](若文件名存在則打開文件,不存在則創建該文件)
vi [文件]:打開文件無顏色標記
vim[文件]:打開文件有顏色標記
3.模式:命令模式(command):左下角無任何提示或左下角有文件名,在正常模式下輸入“:”“/”進入命令模式可以進行保存,搜索,替換,退出,顯示行號等。3
? ? ? ? ? ? ? ? ? ? ?正常模式(normal):vim打開時文件是的默認模式,可對字符行進行復制粘貼刪除,按Esc可進入。
? ? ? ? ? ? ? ? ? ? ?插入模式(insert):左下角有INSERT,插入模式里可進行文字的輸入
? ? ? ? ? ? ? ? ? ? ?末行模式:用于保存或退出文件,以及設置編輯器的工作環境,還可讓用戶執行外部的Linux命令或跳轉到所編輯文檔的特定行數
? ? ? ? ? ? ? ? ? ? ?可視模式(visual):選中一塊區域進行操作,包括刪除復制粘貼等
4.命令模式下常用鍵:
?
命令模式下常用命令
d回車? 刪除光標所在行和光標所在行的下一行
dd 刪除光標所在行
U 取消對當前所做的所有編輯
u? 撤銷
x? ?刪除光標所在字符
S 刪除光標所在行并進入插入模式
yy 復制光標所在行
p 粘貼到光標所在行的下一行
cc 剪切光標所在行并進入插入模式
3 cc/yy? 從光標開始向下剪切3行
40G? 跳轉到第40行行首
G? 跳轉到文檔尾行首
gg 跳轉到文檔首的行首
$ 跳轉到光標所在行的行尾
^ 跳轉到光標所在行的行首
^$? 空白行
命令--->插入模式
a A o O s S i I
a 光標會移向光標所在字符的下一個字符
A 光標移向光標所在行的行尾
o 光標移向光標所在行的下一行行首
O 光標移向光標所在行的上一行行首
s 刪除光標所在字符
S 刪除光標所在行
i 光標不動
I 光標移動到光標所在行的行首
末行模式:
:set nonu? 取消行號標記
:set nu 標記行號
? 高亮標記
/ 高亮標記
:noh 取消高亮標記
:10 跳轉到第10行
:q? ?退出
:q!? ?強制退出
:w 保存
:wq 保存退出
:wq! 強制保存退出
:w 文件名? ?將緩沖區的內容寫入文件名的文件中(若該文件在當前路徑存在則直接內容寫入,若不存在,則將創建該文件)
:r filename 指定文件內容讀取到當前文件(讀取到光標所在行的下一行)
:s /old/new 將當前行中查找到的第一個字符“old”替換為“new”
:s /old/new/g 將當前行中查找到的所有字符串“old”替換為“new”
:#,# s/old/new/g 在行號“#,#”范圍內替換所有的字符串“old”為“new”
:% s/old/new/g 在整個文件范圍內替換所有的字符串“old”為“new”
:s /old/new/c 在替換命令末尾加入c命令,將對每個替換動作提示用戶進行確認
: Tab鍵? 顯示符號和命令
Ctrl+z? ?結束編輯進程
nano 文件名? :進入緩沖區編輯文件
3.當文件不正常退出或者該文件打開了幾個進程,會將之前打開的進程保存成一個隱藏的交換文件。解決方法:
? ? ? ? ? ? ? ? ? ? ? ? 敲Enter
? ? ? ? ? ? ? ? ? ? ? ? 刪除該文件的隱藏文件(含swp)
4.可視化模式操作
1.按Ctrl+v進入可視化模式
2.在可視化模式下移動上下左右鍵選擇一塊區域,按I進入插入模式,可在其中編輯內容,再按Esc退出即可
2.echo命令
1.echo為打印命令,用于在終端設備上輸出字符串或變量提取后的值。
2.語法格式:“echo [字符串] [$變量]”。
? ? ? ? ? ? ? ? ? ? ??echo [字符串] :打印字符串
? ? ? ? ? ? ? ? ? ? ??echo [$變量]:提取變量
3.定義變量:變量名=所賦的值
4.修改變量的值:變量=后面所修改的值
5.符號的使用:
3.管道符
1.? ?|? (前面命令的輸出作為后面命令的輸入)
2.創建管道文件:mkfifo 文件名
3.? |tee :讀取標準輸入數據,并將內容輸出到文件的同時輸出到屏幕
4.命令格式
? 輸出內容?|tee [參數] [文件] [文件]……
5.參數
?
?
?
?
原文鏈接:https://blog.csdn.net/jsstzszyt/article/details/127558511
相關推薦
- 2023-04-18 Python實現常見的4種坐標互相轉換_python
- 2022-04-26 SQL?Server中Sequence對象用法_MsSql
- 2023-07-04 maven引入本地jar,打包問題
- 2022-07-09 docker安裝nginx并部署前端項目的全過程_docker
- 2022-02-10 el-date-picker只能選擇當前時間及之前的時間
- 2023-01-18 淺析Python的對象拷貝和內存布局_python
- 2023-03-27 Android?Framework原理Binder驅動源碼解析_Android
- 2022-04-11 解決git push 錯誤error: src refspec master does not ma
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支