在Linux 操作系統(tǒng)中,有一個(gè)系統(tǒng)軟件包,它的功能類(lèi)似于Windows里面的“添加/刪除程序”,但是功能又比“添加/刪除程序”強(qiáng)很多,它就是 Red Hat Package Manager(簡(jiǎn)稱(chēng)RPM)。此工具包最先是由Red Hat公司推出的,后來(lái)被其他Linux開(kāi)發(fā)商所借用。由于它為L(zhǎng)inux使用者省去了很多時(shí)間,所以被廣泛應(yīng)用于在Linux下安裝、刪除軟件。下面就給大家介紹一下它的具體使用方法。
成都創(chuàng)新互聯(lián)成立十多年來(lái),這條路我們正越走越好,積累了技術(shù)與客戶資源,形成了良好的口碑。為客戶提供成都做網(wǎng)站、網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站策劃、網(wǎng)頁(yè)設(shè)計(jì)、國(guó)際域名空間、網(wǎng)絡(luò)營(yíng)銷(xiāo)、VI設(shè)計(jì)、網(wǎng)站改版、漏洞修補(bǔ)等服務(wù)。網(wǎng)站是否美觀、功能強(qiáng)大、用戶體驗(yàn)好、性?xún)r(jià)比高、打開(kāi)快等等,這些對(duì)于網(wǎng)站建設(shè)都非常重要,成都創(chuàng)新互聯(lián)通過(guò)對(duì)建站技術(shù)性的掌握、對(duì)創(chuàng)意設(shè)計(jì)的研究為客戶提供一站式互聯(lián)網(wǎng)解決方案,攜手廣大客戶,共同發(fā)展進(jìn)步。
1.我們得到一個(gè)新軟件,在安裝之前,一般都要先查看一下這個(gè)軟件包里有什么內(nèi)容,假設(shè)這個(gè)文件是:Linux-1.4-6.i368.rpm,我們可以用這條命令查看:
rpm -qpi Linux-1.4-6.i368.rpm
系統(tǒng)將會(huì)列出這個(gè)軟件包的詳細(xì)資料,包括含有多少個(gè)文件、各文件名稱(chēng)、文件大小、創(chuàng)建時(shí)間、編譯日期等信息。
2.上面列出的所有文件在安裝時(shí)不一定全部安裝,就像Windows下程序的安裝方式分為典型、完全、自定義一樣,Linux也會(huì)讓你選擇安裝方式,此時(shí)我們可以用下面這條命令查看軟件包將會(huì)在系統(tǒng)里安裝哪些部分,以方便我們的選擇:
rpm -qpl Linux-1.4-6.i368.rpm
3. 選擇安裝方式后,開(kāi)始安裝。我們可以用rpm-ivh Linux-1.4-6.i368.rpm命令安裝此軟件。在安裝過(guò)程中,若系統(tǒng)提示此軟件已安裝過(guò)或因其他原因無(wú)法繼續(xù)安裝,但若我們確實(shí)想執(zhí)行安裝命令,可以在 -ivh后加一參數(shù)“-replacepkgs”:
rpm -ivh -replacepkgs Linux-1.4-6.i368.rpm
4.有時(shí)我們卸載某個(gè)安裝過(guò)的軟件,只需執(zhí)行rpm-e 文件名;命令即可。
5.對(duì)低版本軟件進(jìn)行升級(jí)是提高其功能的好辦法,這樣可以省去我們卸載后再安裝新軟件的麻煩,要升級(jí)某個(gè)軟件,只須執(zhí)行如下命令:rpm -uvh 文件名;,注意:此時(shí)的文件名必須是要升級(jí)軟件的升級(jí)補(bǔ)丁
6. 另外一個(gè)安裝軟件的方法可謂是Linux的獨(dú)到之處,同時(shí)也是RMP強(qiáng)大功能的一個(gè)表現(xiàn):通過(guò)FTP站點(diǎn)直接在線安裝軟件。當(dāng)找到含有你所需軟件的站點(diǎn)并與此網(wǎng)站連接后,執(zhí)行下面的命令即可實(shí)現(xiàn)在線安裝,譬如在線安裝Linux-1.4-6.i368.rpm,可以用命令:
rpm -i
7. 在我們使用電腦過(guò)程中,難免會(huì)有誤操作,若我們誤刪了幾個(gè)文件而影響了系統(tǒng)的性能時(shí),怎樣查找到底少了哪些文件呢?RPM軟件包提供了一個(gè)查找損壞文件的功能,執(zhí)行此命令:rpm -Va即可,Linux將為你列出所有損壞的文件。你可以通過(guò)Linux的安裝光盤(pán)進(jìn)行修復(fù)。
8.Linux系統(tǒng)中文件繁多,在使用過(guò)程中,難免會(huì)碰到我們不認(rèn)識(shí)的文件,在Windows下我們可以用“開(kāi)始/查找”菜單快速判斷某個(gè)文件屬于哪個(gè)文件夾,在Linux中,下面這條命令行可以幫助我們快速判定某個(gè)文件屬于哪個(gè)軟件包:
rpm -qf 文件名;
9.當(dāng)每個(gè)軟件包安裝在Linux系統(tǒng)后,安裝文件都會(huì)到RPM數(shù)據(jù)庫(kù)中“報(bào)到”,所以,我們要查詢(xún)某個(gè)已安裝軟件的屬性時(shí),只需到此數(shù)據(jù)庫(kù)中查找即可。注意:此時(shí)的查詢(xún)命令不同于1和8介紹的查詢(xún),這種方法只適用于已安裝過(guò)的軟件包!命令格式:
rpm -參數(shù) 文件名;
linux下vim查找命令:
/text--查找text,按n查找下一個(gè),N查找上一個(gè)
?text--查找text(反向查找),按n查找下一個(gè),N查找上一個(gè)
*/#--查找光標(biāo)當(dāng)前的單詞,相當(dāng)于/text
:setignorecase--查找忽略大小寫(xiě)
:setnoignorecase--查找不忽略大小寫(xiě)
:nohlsearch--關(guān)閉當(dāng)前的高亮顯示,當(dāng)再次查找時(shí)恢復(fù)高亮
:setincsearch--逐步搜索模式,對(duì)當(dāng)前鍵入的字符進(jìn)行查找,不必等輸入完成
:setwrapscan--重新搜索,當(dāng)搜索到文件頭或尾時(shí),返回重新搜索
擴(kuò)展資料:
1、文件窗口:
:openfile--在當(dāng)前窗口打開(kāi)新文件
:splitfile--在新窗口打開(kāi)文件
:newfile--用新窗口打開(kāi)文件,同:splitfile
:bn--切換到下一個(gè)文件
:bp--切換到上一個(gè)文件
:args--查看當(dāng)前打開(kāi)的文件列表(當(dāng)前正在編輯的文件會(huì)用[]括起來(lái))
:e
:e\qadriveest.txt--打開(kāi)遠(yuǎn)程文件
:split--打開(kāi)一個(gè)新窗口,光標(biāo)停在頂層的窗口上
:new--打開(kāi)一個(gè)新窗口,光標(biāo)停在頂層的窗口上
:vsplit--橫向打開(kāi)窗口。
Ctrl+ww--移動(dòng)到下一個(gè)窗口
Ctrl+wj--移動(dòng)到下方的窗口
Ctrl+wk--移動(dòng)到上方的窗口
2、其他命令:
Esc/Ctrl+[--鍵入命令
:!command--執(zhí)行shell命令
:suspend/Ctrl+Z--掛起vim,回到shell,fg返回vim
:!perl-cscript.pl--檢查perl腳本語(yǔ)法,不用退出vim
:!perlscript.pl--執(zhí)行perl腳本,不用退出vim
:help--顯示幫助文檔
:helpi--顯示i的幫助文檔(:特殊鍵用,-t:啟動(dòng)參數(shù)用-)
3、編輯命令:
插入:
i--在當(dāng)前位置插入
A--在當(dāng)前行尾插入
I--在當(dāng)前行首插入
o--在當(dāng)前行后插入一行
O--在當(dāng)前行前插入一行
拷貝粘貼剪切:
yy--拷貝當(dāng)前行
2yy--拷貝當(dāng)前行開(kāi)始的2行
p--在當(dāng)前光標(biāo)后粘貼
P--在當(dāng)前行前粘貼
:1,10co20--將1-10行插入到第20行之后。
:1,$co$--將整個(gè)文件復(fù)制一份并添加到文件尾部
v--進(jìn)入選擇模式,相當(dāng)于在Windows下按住Shift選擇
V--進(jìn)入選擇模式,整行選擇
ddp--交換當(dāng)前行和其下一行
2dd--剪切當(dāng)前行之后的2行
:1,10d--將1-10行剪切
:1,10m20--將第1-10行移動(dòng)到第20行之后
替換:
ra--將當(dāng)前光標(biāo)所在字符替換為a
s/old/new/--用old替換new,替換當(dāng)前行的第一個(gè)匹配
s/old/new/g--用old替換new,替換當(dāng)前行的所有匹配
%s/old/new/--用old替換new,替換所有行的第一個(gè)匹配
%s/old/new/g--用old替換new,替換所有匹配
:10,20s/^/text/g--在第10行到第20行每行前面加上text(:3,5s/^/#/g--注釋3-5行,:3,5s/^#//g
--解除3-5行的注釋,:1,$s/^/#/g--注釋整個(gè)文檔,:%s/^/#/g--注釋整個(gè)文檔)
ddp--交換光標(biāo)所在行和下一行
移動(dòng):
h--左移一個(gè)字符(5h--左移5個(gè)字符)
l--右移一個(gè)字符(5l--右移5個(gè)字符)
k--上移一個(gè)字符(5k--上移5個(gè)字符)
j--下移一個(gè)字符(5j--下移5個(gè)字符)
w--向后移動(dòng)一個(gè)單詞(5w--向后移動(dòng)5個(gè)單詞)
b--向前移動(dòng)一個(gè)單詞(5b--向前移動(dòng)5個(gè)單詞)
e--同w,光標(biāo)停在單詞尾部
ge--同e,光標(biāo)停在單詞尾部
^--移動(dòng)到本行第一個(gè)非空白字符
0--移動(dòng)到本行第0個(gè)字符
--同0
$--移動(dòng)到行尾(3$--移動(dòng)到下面3行的行尾)
gg--移動(dòng)到文件頭(10gg--移動(dòng)到第10行首)
[[--同gg
G--移動(dòng)到文件尾(10G--移動(dòng)到第10行尾)
]]--同G
fx--移動(dòng)到本行光標(biāo)后第一個(gè)為x的字符(3fx--移動(dòng)到本行光標(biāo)后第3個(gè)為x的字符)
Fx--同fx,反向查找
:20--跳到20行行首
Ctrl+e--向下滾動(dòng)一行
Ctrl+y--向上滾動(dòng)一行
Ctrl+d--向下滾動(dòng)半屏
Ctrl+u--向上滾動(dòng)半屏
Ctrl+f--向下滾動(dòng)一屏
Ctrl+b--向上滾動(dòng)一屏
撤銷(xiāo):
u--撤銷(xiāo)
U--撤銷(xiāo)對(duì)整行的操作
Ctrl+r--撤銷(xiāo)剛才的撤銷(xiāo)
刪除:
x--刪除當(dāng)前字符(3x--刪除當(dāng)前光標(biāo)開(kāi)始向后三個(gè)字符)
X--刪除當(dāng)前字符的前一個(gè)字符,同dh
dl--刪除當(dāng)前字符,同x
dh--刪除前一個(gè)字符
dd--刪除當(dāng)前行
dj--刪除上一行
dk--刪除下一行
10d--刪除當(dāng)前行開(kāi)始的10行。
D--刪除當(dāng)前字符至行尾,同d$
kdgg--刪除當(dāng)前行之前所有行(不包括當(dāng)前行)
:1,10d--刪除1-10行
:11,$d--刪除11行及以后所有的行
:1,$d--刪除所有行
J--刪除兩行之間的空行,合并兩行
退出
:wq--保存并退出
ZZ--保存并退出
:q!--強(qiáng)制退出并忽略所有更改
:e!--放棄所有修改,并打開(kāi)原來(lái)文件
:close--關(guān)閉窗口,最后一個(gè)窗口不能使用此命令,可以防止意外退出vim
:q--如果是最后一個(gè)被關(guān)閉的窗口,那么將退出vim
如果沒(méi)有運(yùn)維人員或運(yùn)維軟件,但是又面臨在一個(gè)集群中每臺(tái)機(jī)器都執(zhí)行一個(gè)命令時(shí),總不能真的登錄每一臺(tái)吧。那這里就起一個(gè)簡(jiǎn)單的命令分發(fā)執(zhí)行腳本。
0、確保腳本所在的機(jī)器能夠免密登錄到集群其他機(jī)器
SSH免密登錄配置
1、將集群的IP都寫(xiě)入一個(gè)文件中
2、編寫(xiě)命令分發(fā)腳本
如果機(jī)器數(shù)量少,可以替換第三行語(yǔ)句為
如果機(jī)器IP配置的映射名有規(guī)律,也可以替換第三行語(yǔ)句為
同時(shí)后面的 $i 替換為 hadoop$i?
3、測(cè)試
意思就是沒(méi)有此文件或系統(tǒng)找不到此文件所在位置
一般查找文件使用命令find 比如find . -name test.log
希望可以幫助你,請(qǐng)采納,謝謝
在Linux下,如果你需要執(zhí)行shell腳本,那么應(yīng)該使用那個(gè)命令呢?下面由我為大家整理了linux shell腳本執(zhí)行命令的相關(guān)知識(shí),希望對(duì)大家有幫助!
linux shell腳本執(zhí)行
linux shell腳本執(zhí)行方法一: 切換到shell腳本所在的目錄(此時(shí),稱(chēng)為工作目錄)執(zhí)行shell腳本:
cd /data/shell
./hello.sh
./的意思是說(shuō)在當(dāng)前的工作目錄下執(zhí)行hello.sh。如果不加上./,bash可能會(huì)響應(yīng)找到不到hello.sh的錯(cuò)誤信息。因?yàn)槟壳暗墓ぷ髂夸?/data/shell)可能不在執(zhí)行程序默認(rèn)的搜索路徑之列,也就是說(shuō),不在環(huán)境變量PASH的內(nèi)容之中。查看PATH的內(nèi)容可用 echo $PASH 命令?,F(xiàn)在的/data/shell就不在環(huán)境變量PASH中的,所以必須加上./才可執(zhí)行。
linux shell腳本執(zhí)行方法二: 以絕對(duì)路徑的方式去執(zhí)行bash shell腳本:
/data/shell/hello.sh
linux shell腳本執(zhí)行方法三: 直接使用bash 或sh 來(lái)執(zhí)行bash shell腳本:
cd /data/shell
bash hello.sh
或
cd /data/shell
sh hello.sh
注意,若是以方法三的方式來(lái)執(zhí)行,那么,可以不必事先設(shè)定shell的執(zhí)行權(quán)限,甚至都不用寫(xiě)shell文件中的第一行(指定bash路徑)。因?yàn)榉椒ㄈ菍ello.sh作為參數(shù)傳給sh(bash)命令來(lái)執(zhí)行的。這時(shí)不是hello.sh自己來(lái)執(zhí)行,而是被人家調(diào)用執(zhí)行,所以不要執(zhí)行權(quán)限。那么不用指定bash路徑自然也好理解了啊。
linux shell腳本執(zhí)行方法四: 在當(dāng)前的shell環(huán)境中執(zhí)行bash shell腳本:
cd /data/shell
. hello.sh
或
cd /data/shell
source hello.sh
前三種方法執(zhí)行shell腳本時(shí)都是在當(dāng)前shell(稱(chēng)為父shell)開(kāi)啟一個(gè)子shell環(huán)境,此shell腳本就在這個(gè)子shell環(huán)境中執(zhí)行。shell腳本執(zhí)行完后子shell環(huán)境隨即關(guān)閉,然后又回到父shell中。而方法四則是在當(dāng)前shell中執(zhí)行的。