摘要:按恢復(fù)剛剛的撤銷。按將光標(biāo)所在位置開始往后的個字刪除,并進入插入模式。跳至指定的行列出光標(biāo)所在行的行號。退出,如果無法離開,可在后面跟一個表示強制退出。和默認生成的二進制程序是動態(tài)鏈接的,可以使用指令查看。
通過 yum list 命令可以羅列出當(dāng)前一共有哪些軟件,包由于包的數(shù)目可能非常之多, 這里我們需要使用 grep 命令只篩選出我們關(guān)注的包.
例:
說明:
通過 yum, 我們可以通過很簡單的一條命令完成安裝.
sudo?yum?install?軟件名
yum 會自動找到都有哪些軟件包需要下載, 這時候敲 “y” 確認安裝,出現(xiàn) “complete” 字樣, 說明安裝完成。
注意事項
御卸的命令也很簡單
sudo?yum?remove?軟件名
vim在我們做開發(fā)的時候,主要解決我們編寫代碼的問題,本質(zhì)上就是一個多模式的文本編輯器。
vim最常用的三種模式:命令模式、插入模式、底行模式。
有一點要特別注意,就是你進入vim之后,是處于[正常模式],你要切換到[插入模式]才能夠輸入文字。
1)輸入「i」:按“i”進入插入模式后是從光標(biāo)當(dāng)前位置開始輸入文件。
2)輸入「a」:是從目前光標(biāo)所在位置的下一個位置開始輸入文字。
3)輸入「o」:是插入新的一行,從行首開始輸入文字。
輸入「Shift+;」即可,實際上就是輸入「:」
按左上角的Esc即可
1)w (保存當(dāng)前文件)
2)wq (輸入「wq」,存盤并退出vim)
3)q! (輸入q!,不存盤強制退出vim)
移動光標(biāo)
1)按「k」:光標(biāo)上移。
2)按「j」:光標(biāo)下移。
3)按「h」:光標(biāo)左移。
4)按「l」:光標(biāo)右移。
5)按「$」:移動到光標(biāo)所在行的行尾。
6)按「^」:移動到光標(biāo)所在行的行首。
7)按「gg」:移動到文本開始。
8)按「Shift+g」:移動到文本末尾。
9)按「n+Shift+g」:移動到第n行行首。
10)按「n+Enter」:當(dāng)前光標(biāo)向下移動n行。
11)按「w」:光標(biāo)從左到右,從上到下的跳到下一個字的開頭。
12)按「e」:光標(biāo)從左到右,從上到下的跳到下一個字的結(jié)尾。
12)按「b」:光標(biāo)從右到左,從下到上的跳到上一個字的開頭
刪除
1)按「x」:刪除光標(biāo)所在位置的字符。
2)按「nx」:刪除光標(biāo)所在位置開始往后的n個字符。
3)按「X」:刪除光標(biāo)所在位置的前一個字符。
4)按「nX」:刪除光標(biāo)所在位置的前n個字符。
5)按「dd」:刪除光標(biāo)所在行。
6)按「ndd」:刪除光標(biāo)所在行開始往下的n行。
復(fù)制粘貼
1)按「yy」:復(fù)制光標(biāo)所在行到緩沖區(qū)。
2)按「nyy」:復(fù)制光標(biāo)所在行開始往下的n行到緩沖區(qū)。
3)按「yw」:將光標(biāo)所在位置開始到字尾的字符復(fù)制到緩沖區(qū)。
4)按「nyw」:將光標(biāo)所在位置開始往后的n個字復(fù)制到緩沖區(qū)。
5)按「p」:將已復(fù)制的內(nèi)容在光標(biāo)的下一行粘貼上。
6)按「np」:將已復(fù)制的內(nèi)容在光標(biāo)的下一行粘貼n次。
剪切
1)按「dd」:剪切光標(biāo)所在行。
2)按「ndd」:剪切光標(biāo)所在行開始往下的n行。
3)按「p」:將已剪切的內(nèi)容在光標(biāo)的下一行粘貼上。
4)按「np」:將已剪切的內(nèi)容在光標(biāo)的下一行粘貼n次。
撤銷
1)按「u」:撤銷。
2)按「Ctrl+r」:恢復(fù)剛剛的撤銷。
大小寫切換
1)按「~」:完成光標(biāo)所在位置字符的大小寫切換。
2)按「n~」:完成光標(biāo)所在位置開始往后的n個字符的大小寫切換。
替換
1)按「r」:替換光標(biāo)所在位置的字符。
2)按「R」:替換光標(biāo)所到位置的字符,直到按下「Esc」鍵為止。
更改
1)按「cw」:將光標(biāo)所在位置開始到字尾的字符刪除,并進入插入模式。
2)按「cnw」:將光標(biāo)所在位置開始往后的n個字刪除,并進入插入模式。
翻頁
1)按「Ctrl+b」:上翻一頁。
2)按「Ctrl+f」:下翻一頁。
3)按「Ctrl+u」:上翻半頁。
4)按「Ctrl+d」:下翻半頁。
跳至指定的行
1)「ctrl」+「g」列出光標(biāo)所在行的行號。
2) n+「ctrl」+「g」將光標(biāo)移動至文章的第n行行首
在使用底行模式之前,記住先按「Esc」鍵確定你已經(jīng)處于命令模式,再按「:」即可進入底行模式。
行號設(shè)置
1)「set?nu」:顯示行號。
2)「set?nonu」:取消行號。
保存退出
1)「w」:保存文件。
2)「q」:退出vim,如果無法離開vim,可在「q」后面跟一個「!」表示強制退出。
3)「wq」:保存退出。
分屏指令
1)「vs?文件名」:實現(xiàn)多文件的編輯。
2)「Ctrl+w+w」:光標(biāo)在多屏幕下進行切換。
執(zhí)行指令
1)「!+指令」:在不退出vim的情況下,可以在指令前面加上「!」就可以執(zhí)行Linux的指令,例如查看目錄、編譯當(dāng)前代碼等。
跳到文件中的某一行
1)「#」:「#」號表示一個數(shù)字,在冒號后輸入一個數(shù)字,再按回車鍵就會跳到該行了,如輸入數(shù)字15,再回車,就會跳到文章的第15行。
查找字符
1)「/關(guān)鍵字」: 先按「/」鍵,再輸入您想尋找的字符,如果第一次找的關(guān)鍵字不是您想要的,可以一直按「n」會往后尋找到您要的關(guān)鍵字為止。
2)「?關(guān)鍵字」:先按「?」鍵,再輸入您想尋找的字符,如果第一次找的關(guān)鍵字不是您想要的,可以一直按「n」會往前尋找到您要的關(guān)鍵字為止。
C和C++在編譯代碼時一般會有如下4個步驟
gcc/g++的語法:
gcc [選項] 要編譯的文件 [選項] [目標(biāo)文件]
gcc –E test.c –o test.i
gcc –S test.i –o test.s
gcc -c test.s -o test.o
gcc test.o -o test
鏈接后生成的可執(zhí)行程序也是二進制文件。
函數(shù)庫一般分為靜態(tài)庫和動態(tài)庫兩種
動態(tài)鏈接:
優(yōu)點:省空間(磁盤的空間,內(nèi)存的空間),bin體積小,加載速度快。
缺點:依賴動態(tài)庫,程序可移植性較差。
?
靜態(tài)鏈接:
優(yōu)點:不依賴第三方庫,程序的可移植性較高。
缺點:浪費空間。
gcc和g++默認生成的二進制程序是動態(tài)鏈接的,可以使用file指令查看。
還可以使用ldd指令查看動態(tài)鏈接的可執(zhí)行文件所依賴的庫
進入gdb
指令: gdb?文件名
調(diào)試
1)「run/r」:運行代碼(啟動調(diào)試)。
2)「next/n」:逐過程調(diào)試。
3)「step/s」:逐語句調(diào)試。
4)「until?行號」:跳轉(zhuǎn)至指定行。
5)「finish」:執(zhí)行完當(dāng)前正在調(diào)用的函數(shù)后停下來(不能是主函數(shù))。
6)「continue/c」:運行到下一個斷點處。
7)「set?var?變量=x」:修改變量的值為x。
顯示
1)「list/l?n」:顯示從第n行開始的源代碼,每次顯示10行,若n未給出則默認從上次的位置往下顯示.。
2)「list/l?函數(shù)名」:顯示該函數(shù)的源代碼。
3)「print/p?變量」:打印變量的值。
4)「print/p?&變量」:打印變量的地址。
5)「print/p?表達式」:打印表達式的值,通過表達式可以修改變量的值。
6)「display?變量」:將變量加入常顯示(每次停下來都顯示它的值)。
7)「display?&變量」:將變量的地址加入常顯示。
8)「undisplay?編號」:取消指定編號變量的常顯示。
9)「bt」:查看各級函數(shù)調(diào)用及參數(shù)。
10)「info/i?locals」:查看當(dāng)前棧幀當(dāng)中局部變量的值。
斷點
1)「break/b?n」:在第n行設(shè)置斷點。
2)「break/b?函數(shù)名」:在某函數(shù)體內(nèi)第一行設(shè)置斷點。
3)「info?breakpoint/b」:查看已打斷點信息。
4)「delete/d?編號」:刪除指定編號的斷點。
5)「disable?編號」:禁用指定編號的斷點。
6)「enable?編號」:啟用指定編號的斷點。
退出gdb
1)「quit/q」:退出gdb。
依賴關(guān)系:
文件A的變更會影響到文件B,那么就稱文件B依賴于文件A。
例如,test.o文件是由test.c文件通過預(yù)處理、編譯以及匯編之后生成的文件,所以test.c文件的改變會影響test.o,所以說test.o文件依賴于test.c文件。
依賴方法:
如果文件B依賴于文件A,那么通過文件A得到文件B的方法,就是文件B依賴于文件A的依賴方法。
例如,test.o依賴于test.c,而test.c通過gcc -c test.c -o,test.o指令就可以得到test.o,那么test.o依賴于test.c的依賴方法就是gcc -c test.c -o test.o。
步驟一:
在當(dāng)前目錄下創(chuàng)建一個名為Makefile/makefile的文件。
步驟二:
編寫makefile文件。
編寫完makefile文件后保存退出,然后在命令行當(dāng)中執(zhí)行make指令便可以生成可執(zhí)行程序
makefile文件的簡寫
上文makefile文件也可簡寫成如下形式
我們每次重新生成可執(zhí)行程序前,都應(yīng)該將上一次生成可執(zhí)行程序時生成的一系列文件進行清理,清理的指令相同,我們可以把清理的指令也添加到makefile文件中
注意:這里clean的目標(biāo)文件設(shè)置為偽目標(biāo),用.PHONY修飾,偽目標(biāo)的特性是:不管是否更新都要執(zhí)行。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/123679.html
摘要:是系統(tǒng)提供的容器化技術(shù),簡稱,它結(jié)合和技術(shù)為用戶提供了更易用的接口來實現(xiàn)容器化。公司結(jié)合和以下列出的技術(shù)實現(xiàn)了容器引擎,相比于,具備更加全面的資源控制能力,是一種應(yīng)用級別的容器引擎。 showImg(https://segmentfault.com/img/bVbtPbG?w=749&h=192); 題外話 最近對Docker和Kubernetes進行了一番學(xué)習(xí),前兩天做了一次技術(shù)...
摘要:環(huán)境基礎(chǔ)開發(fā)工具使用軟件包管理器的三板斧查看軟件包安裝軟件卸載軟件和互傳文件的三種模式的轉(zhuǎn)換命令模式插入模式底行模式編譯器使用函數(shù)庫調(diào)試器使用項目自動化構(gòu)建工具軟件包管理器軟件包和軟件包管理器就好比手機上的和應(yīng)用 ...
摘要:函數(shù)名列出某個函數(shù)的源代碼,含函數(shù)名上下各五行類比調(diào)試或從開始連續(xù)而非單步執(zhí)行程序遇到斷點停下。相當(dāng)于中的或單條執(zhí)行。 目錄 一、調(diào)試器gdb 1、可以使用gdb的可執(zhí)行文件生成 2、使用命令 1、開始調(diào)試和退出調(diào)試 2、list 3、類比vs調(diào)試 4、代碼調(diào)試三劍客 5、變量 6、斷點 二...
閱讀 1914·2023-04-26 01:56
閱讀 3111·2021-11-18 10:02
閱讀 3049·2021-09-09 11:35
閱讀 1283·2021-09-03 10:28
閱讀 3408·2019-08-29 18:36
閱讀 2846·2019-08-29 17:14
閱讀 832·2019-08-29 16:10
閱讀 1616·2019-08-26 13:45