linux作業系統學習三

2021-10-18 13:20:08 字數 2578 閱讀 7962

18p-vim的三種工作模式

19p-vim基本操作-跳轉和刪字元

i 進入編輯模式,游標前插入字元

a 進入編輯模式,游標後插入字元

o 進入編輯模式,游標所在行的下一行插入

i 進入編輯模式,游標所在行的行首插入

a 進入編輯模式,游標所在行的行末插入字元

o 進入編輯模式,游標所在行的上一行插入字元

s 刪除游標所在字元並進入編輯模式

s 刪除游標所在行並進入編輯模式

x 刪除游標所在字元,工作模式不變

dw 刪除游標所在單詞,要求游標在首字母上,如果不在首字母,只會刪除當前位置到單詞末,工作模式不變

d 刪除游標所在位置到行末,工作模式不變

0(數字) 游標移到行首,工作模式不變

$ 游標移到行尾,工作模式不變

d0 刪除游標所在位置到行首,工作模式不變

d$ 刪除游標所在位置到行末,工作模式不變

命令模式下的游標移動

h 左移

j 下移

k 上移

l 右移

命令模式下行跳轉

line-g 缺點是沒有回顯

末行模式下行跳轉

:line-回車

跳轉首行

gg (命令模式)

跳轉末行

g (命令模式)

自動縮排

在這之前要進行vimrc修改,不然自動縮排是8個空格

ubuntu的vimrc位置在/etc/vim/vimrc

在檔案末尾新增三行:

set tabstop=4 //設定製表符寬度為4

set softtabstop=4 // 設定軟製表符寬度為4

set shiftwidth=4 // 設定縮排空格數為4

gg=g (命令模式),無回顯

大括號跳轉

命令模式下,游標處於左大括號時,使用%跳轉到對應右大括號,再按%跳回去。

其他括號也可以這樣

20p-vim基本操作-刪除

替換單個字元

r 命令模式下替換游標選中字元

一段刪除,即刪除指定區域

游標選中要刪除的首字元,按v進入可視模式,再使用hjkl移動到要刪除的末尾,按d刪除

刪除整行:

dd,刪除游標所在行

n+dd ,刪除從游標開始的n行

21p-vim基本操作-複製貼上

yy 複製游標所在行

p 向後貼上剪下板內容,如果複製整行,這裡是貼上在游標所在位置的下一行

p 向前貼上剪下板內容,如果是整行,這裡是貼上在游標所在位置的上一行

這裡提一下,上一節裡的dd,不是刪除,而是剪下,小時的內容去了剪下板,而不是刪掉了

p和p貼上會出現換行,主要原因是複製整行時,會把行末的換行符也複製下來。

n-yy 複製游標所在位置的n行,包括游標所在行

查詢游標所在單詞

游標在目標單詞上時,*或者#查詢下乙個,這裡不要求游標必須在首字母上

替換:末行模式下進行

單行替換

游標置於待替換行, ? /待替換詞/替換詞

全文替換

:%s /待替換詞/替換詞 這個預設替換每行的首個,一行有多個目標詞時,後面的不會變

:%s /待替換詞/替換詞/g 真正意義上的全域性替換

區域替換

:24,35s /待替換詞/替換詞/g 替換24-35行之間的目標詞

23p-vim基本操作-其他

命令模式下

u 撤銷操作

ctrl-r 反撤銷

分屏,末行模式下

:sp 水平分屏

:vsp 豎直分屏

分屏命令+filename,分屏並開啟這個檔案

分屏後螢幕切換,ctrl-w-w

使用:q退出游標所在視窗

使用:qall退出所有視窗

從vim中跳轉manpage,命令模式下

將游標放在待檢視單詞上,按k,預設看第一卷

n+k,檢視第n卷

檢視巨集定義:命令模式

游標放在待檢視詞上,[+d即可檢視

vim下使用shell命令:末行模式

:! + 命令

操作後,會切換至終端顯示結果,出現如下畫面,按enter後回到vim介面

24p-vim配置思路

兩個vim配置檔案

/etc/vim/vimrc

~/.vimrc

其中,第二個配置檔案會優先載入,屬於使用者配置

25p-gcc編譯4步驟

26p-gcc編譯常用引數

當頭檔案和原始碼不在乙個目錄下時,需要指定標頭檔案

下圖是標頭檔案和原始碼在同乙個目錄下

將hello.h放入新建的資料夾hellodir之後,編譯會失敗

gcc -i ./hellodir hello.c -o hello

其中-i引數指定標頭檔案所在位置,位置可以在編譯檔案前,也可以在後面

-i 指定標頭檔案所在目錄位置

-c 只做預處理,編譯,彙編。得到二進位制檔案

-g 編譯時新增除錯檔案,用於gdb除錯

-wall 顯示所有警告資訊

-d 向程式中「動態」註冊巨集定義

-l 指定動態庫庫名

-l 指定動態庫路徑

Linux作業系統學習(三) 命令

linux剛出世時沒有什麼圖形介面,所有的操作全靠命令完成,就如同電視裡的黑客那樣,充滿了神秘。近幾年來,儘管linux發展迅速,圖形介面越來越有好,但是在真正的開發過程中,linux命令列的應用還是占有非常重要的席位,而且許多linux功能在命令列介面要比圖形化介面下雲翔的快。可以說不會命令,就不...

Linux 作業系統學習

boot loader主要功能 kernel boot loader 載入kernel,和initrd.img 到記憶體中。kernel 啟動後自動解壓,將initrd.img的內容掛載為init 根檔案系統。kernel 從init根檔案系統中載入所需的功能模組。kernel 會根據grub.cf...

linux作業系統學習

紅帽認證系統管理員 rhcsa cat 用於檢視比較小的純文字檔案,需要顯示行號時可加上 n引數 head 用於檢視文字檔案的前n行。如head n 20 檔名,即可檢視前20行 tail檢視檔案後n行,tail f 檔名,可以實時顯示檔案重新整理內容 cut 按列提取文字字元,當文字中有間隔符時,...