網(wǎng)站沒收錄可以做排名阿里云域名注冊(cè)查詢
目錄
本節(jié)目標(biāo):
Linux 軟件包管理器 yum
什么是軟件包
1.yum是什么?軟件包?
2.Linux(centos)的生態(tài)
3.yum的相關(guān)操作
我怎么知道我應(yīng)該安裝什么軟件??
4.yum的本地配置
關(guān)于 rzsz
查看軟件包
Linux編輯器-vim使用
1.vim的概念
?vim三種模式的轉(zhuǎn)換
2.vim的指令
命令模式
插入模式
底行模式
分屏
注釋?
3. 解決普通用戶無法sudo問題
4.簡單vim配置
1.原理?
?5.ctrl+z退出vim問題
本節(jié)目標(biāo):
1. 學(xué)習(xí)yum工具,進(jìn)行軟件安裝
2. 掌握vim編輯器使用,學(xué)會(huì)vim的簡單配置
3. 掌握gcc/g++編譯器的使用,并了解其過程,原理
4. 掌握簡單gdb使用于調(diào)試
5. 掌握簡單的Makefile編寫,了解其運(yùn)行思想
6. 編寫自己的第一個(gè)Linux 程序:進(jìn)度條
7. 學(xué)習(xí) git 命令行的簡單操作, 能夠?qū)⒋a上傳到 Github 上
Linux 軟件包管理器 yum
什么是軟件包
在Linux下安裝軟件, 一個(gè)通常的辦法是下載到程序的源代碼, 并進(jìn)行編譯, 得到可執(zhí)行程序.
但是這樣太麻煩了, 于是有些人把一些常用的軟件提前編譯好, 做成軟件包(可以理解成windows上的安裝程序)放在一個(gè)服務(wù)器上, 通過包管理器可以很方便的獲取到這個(gè)編譯好的軟件包, 直接進(jìn)行安裝.
軟件包和軟件包管理器, 就好比 "App" 和 "應(yīng)用商店" 這樣的關(guān)系.
yum(Yellow dog Updater, Modified)是Linux下非常常用的一種包管理器. 主要應(yīng)用在Fedora, RedHat,Centos等發(fā)行版上.
1.yum是什么?軟件包?
yum是一個(gè)軟件下載安裝管理的一個(gè)客戶端,小米應(yīng)用商店、華為應(yīng)用商城
Linux中軟件包可能有依賴關(guān)系 -- yum會(huì)幫我們解決依賴關(guān)系的問題
軟件包是誰給的 ???
2.Linux(centos)的生態(tài)
源代碼安裝,rpm包安裝,yum安裝
各種不同的環(huán)境編譯好
我的機(jī)器內(nèi)部一定內(nèi)置了目標(biāo)服務(wù)器的地址連接,當(dāng)我們用yum進(jìn)行下載時(shí),則是將web地址給與到y(tǒng)um,與之相連接
yum的倉庫配置文件
打開倉庫
3.yum的相關(guān)操作
yum list | grep XXX:查看yum的可下載文件
[sudo/root身份]yum install [-y]XXX:用yum進(jìn)行安裝
[sudo/root身份]yum remove [-y]XXX:用yum進(jìn)行刪除
我怎么知道我應(yīng)該安裝什么軟件??
引用軟件源來安裝更多軟件
4.yum的本地配置
配置將來是在干什么 ???
yum會(huì)根據(jù)/etc/yum.repos.d/該路徑下面的配置文件,來構(gòu)成自己的下載鏈接,(根據(jù)OS版本、根據(jù)你要下載的軟件),yum幫助我們下載,安裝
一般的機(jī)器,內(nèi)置的鏈接地址是centos的官網(wǎng),軟件鏈接都指向的是國外的。yum可能會(huì)比較慢,所以需要配置
如何配置?本質(zhì)就是更改文件,或者更改文件內(nèi)容。wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
清除緩存、生成緩存、升級(jí)更新
yum clean all
yum makecache
yum -y update
使用yum一般都是要聯(lián)網(wǎng)的
關(guān)于 rzsz
這個(gè)工具用于 windows 機(jī)器和遠(yuǎn)端的 Linux 機(jī)器通過 XShell 傳輸文件.
安裝完畢之后可以通過拖拽的方式將文件上傳過去
rz:從Windows傳送文件到Linux系統(tǒng)當(dāng)前目錄下,圖形化界面——推拽文件到linux(rz-E)
sz:將Linux文件傳輸?shù)絯indows本地
scp:?遠(yuǎn)程拷貝
scp [參數(shù)] [原路徑] [目標(biāo)路徑]
注意事項(xiàng)
關(guān)于 yum 的所有操作必須保證主機(jī)(虛擬機(jī))網(wǎng)絡(luò)暢通!!!
可以通過 ping 指令驗(yàn)證ping www.baidu.com
查看軟件包
通過 yum list 命令可以羅列出當(dāng)前一共有哪些軟件包. 由于包的數(shù)目可能非常之多, 這里我們需要使用 grep 命令只
篩選出我們關(guān)注的包. 例如:yum list | grep lrzsz
結(jié)果如下:
lrzsz.x86_64 0.12.20-36.el7 @base
?注意事項(xiàng):
軟件包名稱: 主版本號(hào).次版本號(hào).源程序發(fā)行號(hào)-軟件包的發(fā)行號(hào).主機(jī)平臺(tái).cpu架構(gòu).
"x86_64" 后綴表示64位系統(tǒng)的安裝包, "i686" 后綴表示32位系統(tǒng)安裝包. 選擇包時(shí)要和系統(tǒng)匹配.
"el7" 表示操作系統(tǒng)發(fā)行版的版本. "el7" 表示的是 centos7/redhat7. "el6" 表示 centos6/redhat6.
最后一列, base 表示的是 "軟件源" 的名稱, 類似于 "小米應(yīng)用商店", "華為應(yīng)用商店" 這樣的概念
Linux編輯器-vim使用
1.vim的概念
vim的三種主要模式(其實(shí)有好多模式,目前掌握這3種即可),分別是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能區(qū)分如下
正常/普通/命令模式(Normal mode)
控制屏幕光標(biāo)的移動(dòng),字符、字或行的刪除,移動(dòng)復(fù)制某區(qū)段及進(jìn)入Insert mode下,或者到 last line mode
插入模式(Insert mode)
只有在Insert mode下,才可以做文字輸入,按「ESC」鍵可回到命令行模式。該模式是我們后面用的最頻繁的編輯模式。
底行模式(last line mode)
文件保存或退出,也可以進(jìn)行文件替換,找字符串,列出行號(hào)等操作。 在命令模式下,shift+: 即可進(jìn)入該模式。要查看你的所有模式:打開vim,底行模式直接輸入
?vim三種模式的轉(zhuǎn)換
命令模式-》底行模式:shift+;
底行模式-》命令模式:esc
命令模式-》插入模式:i(從原位置開始輸入),o(另起一行進(jìn)行輸入),a(從第二個(gè)字符開始輸入)
插入模式-》命令模式:esc
底行模式與插入模式不能互相到達(dá)
2.vim的指令
1.vim可以默認(rèn)打開,單獨(dú)一個(gè)vim
退出時(shí)需要shift+;+q!強(qiáng)制退出
2.vim test.c默認(rèn)打開(即沒有提前新建test.c文件)不寫東西,直接q!退出,不保存,不會(huì)新建文件
命令模式
n+yy:復(fù)制當(dāng)前行 n:連續(xù)復(fù)制n行
n+p:粘貼,當(dāng)前光標(biāo)的下一行 n:表示把指定內(nèi)容粘貼n次
u撤銷 ctrl+r:對(duì)歷史微銷,進(jìn)行撒銷n+dd:剪切/刪除指定行、連續(xù)的多行
shift+4=$:將光標(biāo)定位到當(dāng)前行的結(jié)尾
shift+6=^:將光標(biāo)定位到當(dāng)前行的開始
gg:將光標(biāo)定位到整個(gè)文本的最開頭
shift+g=G:將光標(biāo)定位到整個(gè)文本的最后十行
n+shift+g=nG:將光標(biāo)定位到整個(gè)文本任意一行
h.j.k,l:左,下,上,右,也可以帶n。 --- >快速記住
w:按照單詞為單位進(jìn)行光標(biāo)后移
b:按照單詞為單位進(jìn)行光標(biāo)前移Shift+' =~: 大小寫快速切換
n+x:刪除光標(biāo)后續(xù)的一個(gè)字符,可以一次刪除n個(gè) -- 一行內(nèi)
n+shift+x=X:刪除光標(biāo)之前的一個(gè)字符,可以一次刪除n個(gè) --- 一行內(nèi)
n+r:對(duì)光標(biāo)指定的位置,進(jìn)行一個(gè)字符的替換,可以一次替換多個(gè)
shift+r=R:進(jìn)入替換模式,直接進(jìn)行文本替換,退出此模式輸入escshift+zz=ZZ:保存井退出
插入模式
命令模式下輸入a,i,o進(jìn)入,輸入代碼
底行模式
w:保存
q:退出
wq:保存井退出
!: 強(qiáng)制set nu、 nonu: 打開行號(hào),去掉行號(hào)
/關(guān)鍵字:做搜索
Icommand:不退出vim,可以進(jìn)行shell命令的執(zhí)行。
常用函數(shù)查看:vs filename 分屏,多文件操作
分屏
底行模式下:
分屏:vs 文件名
ctrl+ww:界面之間光標(biāo)的轉(zhuǎn)移
注釋?
批量化注釋
第一步 ctrl+v進(jìn)入VISUAL BLOCK模式第二步 hjkl區(qū)域選擇(j)
第三步 shift+i=l進(jìn)入插入模式,再輸入//
第四步 執(zhí)行兩次esc
批量化去注釋
第一步 ctrl+v進(jìn)入VISUAL BLOCK模式,第二步 hjkl區(qū)域選擇
第三步 (包含且僅包含//),開始只會(huì)選中一列再按l鍵進(jìn)行框選,框選中//,再輸入d
3. 解決普通用戶無法sudo問題
平常的普通用戶無法執(zhí)行sudo命令提權(quán),只有是被信任的用戶才可以使用sudo
在這個(gè)文件中添加此用戶,即為被信任的用戶,才可以使用sudo命令
ls /etc/sudoers
再sudoers文件中添加用戶,只能再root(超級(jí)管理員)下去添加用戶
1.vim /etc/sudoers進(jìn)入文件信息
2.找到以下框圖,下面添加你的用戶,樣例與root一樣
?
3.之后退出時(shí),在底行模式中,用wq!強(qiáng)制退出
4.簡單vim配置
1.原理?
vim不是簡單直接執(zhí)行可執(zhí)行程序就行,也會(huì)讀取若干配置文件, .vimrc
在我們的家目錄里面會(huì)有一些隱藏文件
如果沒有,可以在此目錄下創(chuàng)建一個(gè).vimrc的文件,在此文件中可以寫vim的配置項(xiàng)
之后再打開你的文件,會(huì)實(shí)時(shí)執(zhí)行
加上行號(hào)
vim test.c
?5.ctrl+z退出vim問題
ctrl+z的話,ctrl+z并不是退出test.c,表示將程序暫停了
暫停之后相當(dāng)于這個(gè)vim變成了后端任務(wù)
ps ajx | grep vim
這個(gè)vim還是再運(yùn)行
盡量用kill去點(diǎn)這個(gè)vim運(yùn)行
之后打開vim還是會(huì)顯示這個(gè)頁面,是因?yàn)関im再異常崩潰的時(shí)候,會(huì)在當(dāng)前默認(rèn)目錄下形成一個(gè)臨時(shí)文件,這個(gè)臨時(shí)文件(.test.c.swp)方便我們進(jìn)行恢復(fù),按下E即可恢復(fù)編寫,但之后打開vim還是會(huì)出現(xiàn)下面畫面
生成的臨時(shí)文件時(shí)隱藏的,ls -la下,再吧.test.c.swp刪除就不會(huì)有上述頁面出現(xiàn)