vim可以分為三種狀態(tài),分別是 命令行模式(command mode) 、 輸入模式(Insert mode) 和 底行模式(last line mode) ,這 3 種工作模式可隨意切換,如下圖所示。
創(chuàng)新互聯(lián)專注于企業(yè)全網(wǎng)營(yíng)銷推廣、網(wǎng)站重做改版、海城網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5高端網(wǎng)站建設(shè)、成都做商城網(wǎng)站、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為海城等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。
使用vim編輯文件時(shí),默認(rèn)處于命令行模式。此模式下,可使用方向鍵(上、下、左、右鍵)或 k、j、h、i 移動(dòng)光標(biāo)的位置,還可以對(duì)文件內(nèi)容進(jìn)行復(fù)制、粘貼、替換、刪除等操作。
下圖所示是vim處于命令行模式的狀態(tài)示意圖。
在輸入模式下,vim可以對(duì)文件執(zhí)行寫操作,類似于在Windows系統(tǒng)的文檔中輸入內(nèi)容。
使vim進(jìn)行輸入模式的方式是在命令模式狀態(tài)下輸入 i 、 I 、 a 、 A 、 o 、 O 等插入命令(各指令的具體功能下表所示),當(dāng)編輯文件完成后按 esc 鍵即可返回命令模式。
下圖所示為vim處于輸入模式模式下的示意圖。
底行模式用于對(duì)文件中的指定內(nèi)容執(zhí)行保存、查找或替換等操作。
使vim切換到底行模式的方法是在 命令行模式 狀態(tài)下按 : 鍵(注意是英文符號(hào)),此時(shí)vim窗口的左下方出現(xiàn)一個(gè) : 符號(hào),這是就可以輸入相關(guān)指令進(jìn)行操作了。
指令執(zhí)行后vim會(huì)自動(dòng)返回命令行模式。如想直接返回命令行模式,按 esc 即可。
下圖所示為vim進(jìn)入底行模式后的狀態(tài)。
對(duì)于新手來(lái)說(shuō),經(jīng)常不知道自己處于什么模式。不論是自己忘了,還是不小心切換了模式,都可以按一次 esc 鍵返回命令行模式。如果你多按幾次 esc 鍵后聽(tīng)到"嘀————"的聲音,則代表你已經(jīng)處于命令行模式了。
打開(kāi)文件
打開(kāi)文件時(shí)光標(biāo)處于文件尾部
打開(kāi)文件時(shí),光標(biāo)定位到第幾行
字符移動(dòng)
這些移動(dòng)鍵都可以加上數(shù)字(5h:向左移動(dòng)5個(gè)字符格)
單詞移動(dòng)
行內(nèi)跳轉(zhuǎn)
行間移動(dòng)
在底行模式下,直接給出行號(hào),實(shí)現(xiàn)跳轉(zhuǎn)
用法:起始地址,結(jié)束地址 s @要替換內(nèi)容@替換后內(nèi)容@gi(@分隔符)
例 :1,$s/a/A/g 把文件中全部的a換替換成A,全局替換
顯示取消行號(hào)
設(shè)定自動(dòng)縮進(jìn)(寫腳本時(shí))
查找到的文本高亮顯示
語(yǔ)法高亮
/etc/vimrc :全局配置文件,永久有效
~/.vimrc :個(gè)人配置文件,每個(gè)用戶的家目錄中,若不存在,手動(dòng)創(chuàng)建
對(duì)于第一次用vim的童鞋,有幾點(diǎn)需要提醒一下:
Linux
find命令用來(lái)在指定目錄下查找文件。任何位于參數(shù)之前的字符串都將被視為欲查找的目錄名。如果使用該命令時(shí),不設(shè)置任何參數(shù),則find命令將在當(dāng)前目錄下查找子目錄與文件,并且將查找到的子目錄和文件全部進(jìn)行顯示。
語(yǔ)法格式:
find path -option [ -print ] [ -exec -ok command ] {} \;
參數(shù)說(shuō)明:
find根據(jù)下列規(guī)則判斷path和expression,在命令列上第一個(gè)-(),!之前的部分為path,之后的部分是expression。如果path是空字串則使用目前路徑,如果expression是空字串則使用-print為預(yù)設(shè)expression。
expression中可使用的選項(xiàng)有二三十個(gè),在此只介紹常用的部分。
-mount,-xedv:只檢查和指定目錄在同一個(gè)文件系統(tǒng)下的文件,避免列出其他文件系統(tǒng)中的文件;
-amin n:在過(guò)去n分鐘內(nèi)被讀取過(guò);
-anewer file:比文件file更晚被讀取過(guò)的文件;
-atime n:在過(guò)去n天內(nèi)被讀取過(guò)的文件;
-cmin n:在過(guò)去n分鐘內(nèi)被修改過(guò);
-cnewer file:比文件file更新的文件;
-ctime n:在過(guò)去n天內(nèi)被修改過(guò)的文件;
-empty:空的文件-gid n or -group name:gid是n或是group名稱是name;
-ipath p,-path p:路徑名稱符合p的文件,ipath會(huì)忽略大小寫;
-name name,-iname name:文件名稱符合name的文件,iname會(huì)忽略大小寫;
-size n:文件大小是n單位,b代表512位元組的區(qū)塊,c表示字元數(shù),k表示kilo bytes,w是二個(gè)位元組。
-type c:文件類型是C的文件。
簡(jiǎn)單的來(lái)說(shuō), vi 是老式的字處理器,不過(guò)功能已經(jīng)很齊全了,但是還是有可以進(jìn)步的地方。 vim 則可以說(shuō)是程序開(kāi)發(fā)者的一項(xiàng)很好用的工具,就連 vim 的官方網(wǎng)站 ( ) 自己也說(shuō) vim 是一個(gè)『程序開(kāi)發(fā)工具』而不是文字處理軟件~ _ 。你可以將 vim 視作 vi 的進(jìn)階版本,vim 可以用顏色或底線等方式來(lái)顯示一些特殊的信息。
基本上 vi 共分為三種模式,分別是『一般指令模式』、『編輯模式』與『指令列命令模式』。 這 三種模式的作用分別是:一般指令模式 (command mode)、編輯模式 (insert mode)、指令列命令模式 (command-line mode)。
以 vi 打開(kāi)一個(gè)文件就直接進(jìn)入一般指令模式了(這是默認(rèn)的模式,也簡(jiǎn)稱為一般模式)。在這個(gè)模 式中, 你可以使用『上下左右』按鍵來(lái)移動(dòng)光標(biāo),你可以使用『刪除字符』或『刪除整列』來(lái)處 理文件內(nèi)容, 也可以使用『復(fù)制、貼上』來(lái)處理你的文件數(shù)據(jù)。
在一般指令模式中可以進(jìn)行刪除、復(fù)制、貼上等等的動(dòng)作,但是卻無(wú)法編輯文件內(nèi)容的! 要等到你按下『 i, I, o, O, a, A, r, R 』等任何一個(gè)字母之后才會(huì)進(jìn)入編輯模式。通常在 Linux
中,按下這些按鍵時(shí),在畫面的左下方會(huì)出現(xiàn)『 INSERT 或 REPLACE 』的字樣,此時(shí)才可以進(jìn) 行編輯。而如果要回到一般指令模式時(shí), 則必須要按下『Esc』這個(gè)按鍵即可退出編輯模式。
在一般模式當(dāng)中,輸入『 : / ? 』三個(gè)中的任何一個(gè)按鈕,就可以將光標(biāo)移動(dòng)到最底下那一列。在 這個(gè)模式當(dāng)中, 可以提供你『搜尋資料』的動(dòng)作,而讀取、存盤、大量取代字符、離開(kāi) vi 、顯 示行號(hào)等等的動(dòng)作則是在此模式中達(dá)成的!
具體命令如下圖所示(來(lái)自鳥(niǎo)哥的 linux 私房菜)
Linux 命令大全
Linux grep 命令用于查找文件里符合條件的字符串。
grep 指令用于查找內(nèi)容包含指定的范本樣式的文件,如果發(fā)現(xiàn)某文件的內(nèi)容符合所指定的范本樣式,預(yù)設(shè) grep 指令會(huì)把含有范本樣式的那一列顯示出來(lái)。若不指定任何文件名稱,或是所給予的文件名為 - ,則 grep 指令會(huì)從標(biāo)準(zhǔn)輸入設(shè)備讀取數(shù)據(jù)。
參數(shù) :
Linux 命令大全
1、在當(dāng)前目錄中,查找后綴有 file 字樣的文件中包含 test 字符串的文件,并打印出該字符串的行。此時(shí),可以使用如下命令:
結(jié)果如下所示:
2、以遞歸的方式查找符合條件的文件。例如,查找指定目錄/etc/acpi 及其子目錄(如果存在子目錄的話)下所有文件中包含字符串"update"的文件,并打印出該字符串所在行的內(nèi)容,使用的命令為:
輸出結(jié)果如下:
3、反向查找。前面各個(gè)例子是查找并打印出符合條件的行,通過(guò)"-v"參數(shù)可以打印出不符合條件行的內(nèi)容。
查找文件名中包含 test 的文件中不包含test 的行,此時(shí),使用的命令為:
結(jié)果如下所示:
Linux系統(tǒng)下想要查看當(dāng)前的路徑,那我們?cè)撌褂媚莻€(gè)命令呢?下面由我為大家整理了linux查看路徑命令的相關(guān)知識(shí),希望對(duì)大家有幫助。
目錄
linux查看路徑命令
linux查看路徑的其他命令
linux下查找某個(gè)文件位置的方法
linux查看路徑命令
查看當(dāng)前路徑命令:pwd
pwd命令能夠顯示當(dāng)前所處的路徑。
這個(gè)命令比較簡(jiǎn)單,如果有時(shí)在操作過(guò)程中忘記了當(dāng)前的路徑,則可以通過(guò)此命令來(lái)查看路徑,其執(zhí)行方式為:
# pwd /home/samlee
第一行為運(yùn)行的命令,第二行的內(nèi)容為運(yùn)行pwd命令后顯示的信息,即顯示用戶當(dāng)前所在的工作目錄的路徑為/home/samlee。
提示:
應(yīng)該經(jīng)常使用pwd命令。Linux的目錄結(jié)構(gòu)非常復(fù)雜,一個(gè)小小的分支就可能會(huì)有十幾層目錄,就好像是個(gè)森林,所以Linux不會(huì)像Windows那樣把全路徑寫在提示符里,那樣太長(zhǎng)了。
linux查看路徑的其他命令
whereis 用來(lái)查看一個(gè)命令或者文件所在的絕對(duì)路徑,而 which 用來(lái)查看當(dāng)前要執(zhí)行的命令所在的路徑。
下面舉個(gè)例子來(lái)說(shuō)明。加入你的linux系統(tǒng)上裝了多個(gè)版本的java。如果你直接在命令行敲命令 "java -version" ,會(huì)得到一個(gè)結(jié)果。但是,你知道是哪一個(gè)路徑下的java在執(zhí)行嗎?如果想知道,可以用 which 命令:
which java
得到的結(jié)果就是系統(tǒng)默認(rèn)執(zhí)行的java所在的路徑。
如果使用命令: whereis java
那么你會(huì)得到很多條結(jié)果,因?yàn)檫@個(gè)命令把所有包含java(不管是文件還是文件夾)的路徑都列了出來(lái)。
linux下查找某個(gè)文件位置的 方法
一.通過(guò)文件名查找法:
舉例說(shuō)明,假設(shè)你忘記了httpd.conf這個(gè)文件在系統(tǒng)的哪個(gè)目錄 下,甚至在系統(tǒng)的某個(gè)地方也不知道,則這是可以使用如下命令:
find / -name httpd.conf
這個(gè)命令語(yǔ)法看起來(lái)很容易就明白了,就是直接在find后面寫上 -name,表明要求系統(tǒng)按照文件名查找,最后寫上httpd.conf這個(gè)目標(biāo)文件名即可。稍等一會(huì)系統(tǒng)會(huì)在計(jì)算機(jī)屏幕上顯示出查找結(jié)果列表:
etc/httpd/conf/httpd.conf
這就是httpd.conf這個(gè)文件在Linux系統(tǒng)中的完整路徑。查找成功。
如果輸入以上查找命令后系統(tǒng)并沒(méi)有顯示出結(jié)果,那么不要以為系統(tǒng)沒(méi)有執(zhí)行find / -name httpd.conf命令,而可能是你的系統(tǒng)中沒(méi)有安裝Apache服務(wù)器,這時(shí)只要你安裝了ApacheWeb服務(wù)器,然后再使用find / -name httpd.conf就能找到這個(gè)配置文件了。
二.無(wú)錯(cuò)誤查找技巧:
在Linux系統(tǒng)中“find”命令是大多數(shù)系統(tǒng)用戶都可以使用的命令,并不是ROOT系統(tǒng)管理員的專利。但是普通用戶使用“find”命令時(shí)也有可 能遇到這樣的問(wèn)題,那就是Linux系統(tǒng)中系統(tǒng)管理員ROOT可以把某些文件目錄設(shè)置成禁止訪問(wèn)模式。這樣普通用戶就沒(méi)有權(quán)限用“find”命令來(lái)查詢這 些目錄或者文件。當(dāng)普通用戶使用“find”命令來(lái)查詢這些文件目錄是,往往會(huì)出現(xiàn)"Permissiondenied."(禁止訪問(wèn))字樣。系統(tǒng)將無(wú)法 查詢到你想要的文件。為了避免這樣的錯(cuò)誤,我們可是使用轉(zhuǎn)移錯(cuò)誤提示的方法嘗試著查找文件,例如輸入:
find / -name access_log 2/dev/null
這個(gè)方法是把查找錯(cuò)誤提示轉(zhuǎn)移到特定的目錄中去。系統(tǒng)執(zhí)行這個(gè)命令后,遇到錯(cuò)誤的信息就直接輸送到stderrstream2 中,access_log2就是表明系統(tǒng)將把錯(cuò)誤信息輸送到stderrstream2中,/dev/null是一個(gè)特殊的文件,表明空的或者錯(cuò)誤的信 息,這樣查詢到的錯(cuò)誤信息將被轉(zhuǎn)移了,不會(huì)再顯示了。
在Linux系統(tǒng)查找文件也會(huì)遇到這樣一個(gè)實(shí)際問(wèn)題。如果我們?cè)谡麄€(gè)硬盤,這個(gè)系統(tǒng)中查找某個(gè)文件就要花費(fèi)相當(dāng)長(zhǎng)的一段時(shí)間,特別是大型Linux系 統(tǒng)和容量較大的硬盤,文件放在套嵌很深的目錄中的時(shí)候。如果我們知道了這個(gè)文件存放在某個(gè)大的目錄中,那么只要在這個(gè)目錄中往下找就能節(jié)省很多時(shí)間了。使 用find /etc -name httpd.conf就可以解決這個(gè)問(wèn)題。上面的命令就是表示在etc目錄中查詢httpd.conf這個(gè)文件。這里再說(shuō)明一下“/”這個(gè)函數(shù)符號(hào)的含 義,如果輸入“find /”就是表示要求Linux系統(tǒng)在整個(gè)ROOT目錄下查找文件,也就是在整個(gè)硬盤上查找文件,而“find /etc”就是只在
etc目錄下查找文件。因?yàn)椤癴ind /etc”表示只在etc目錄下查找文件,所以查找的速度就相應(yīng)要快很多了。
三.根據(jù)部分文件名查找方法:
例如我們知道某個(gè)文件包含有srm這3個(gè)字母,那么要找到系統(tǒng)中所有包含有這3個(gè)字母的文件是可以實(shí)現(xiàn) 的,輸入:
find /etc -name '_srm_'
這個(gè)命令表明了Linux系統(tǒng)將在/etc整個(gè)目錄中查找所有的包含有srm這3個(gè)字母的文件,比如absrmyz,tibc.srm等等符合條件的文件都能顯示出來(lái)。如果你還知道這個(gè)文件是由srm 這3個(gè)字母打頭的,那么我們還可以省略最前面的星號(hào),命令如下:
find/etc -name 'srm_'
這是只有像srmyz這樣的文件才被查找出來(lái),像absrmyz或者absrm這樣的文件都不符合要求,不被顯示,這樣查找文件的效率和可靠性就大大增強(qiáng)了。
四.根據(jù)文件的特征查詢方法:
如果只知道某個(gè)文件的大小,修改日期等特征也可以使用“find”命令查找出來(lái),這和WINDOWS系統(tǒng)中的“搜索”功能是基本相同的。在微軟的“搜 索”中,“搜索助理”使得搜索文件和文件夾、打印機(jī)、用戶以及網(wǎng)絡(luò)中的其他計(jì)算機(jī)更加容易。它甚至使在Internet上搜索更加容易?!八阉髦怼边€包 括一個(gè)索引服務(wù),該服務(wù)維護(hù)了計(jì)算機(jī)中所有文件的索引,使得搜索速度更快。使用“搜索助理”時(shí),用戶可以指定多個(gè)搜索標(biāo)準(zhǔn)。例如,用戶可以按名稱、類型及 大小搜索文件和文件夾。用戶甚至可以搜索包含特定文本的文件。如果用戶正使用Active Directory,這時(shí)還可以搜索帶有特定名稱或位置的打印機(jī)。
例如我們知道一個(gè)Linux文件大小為1,500bytes,那么我們可是使用如下命令來(lái)查詢find /-size
1500c,字符c表明這個(gè)要查找的文件的大小是以bytes為單位。如果我們連這個(gè)文件的具體大小都不知道,那么在Linux中還可以進(jìn)行模糊查找方式 來(lái)解決。例如我們輸入find /-size+10000000c這個(gè)命令,則標(biāo)明我們指定系統(tǒng)在根目錄中查找出大于10000000字節(jié)的文件并顯示出來(lái)。命令中的“+”是表示要求系 統(tǒng)只列出大于指定大小的文件,而使用“-”則表示要求系統(tǒng)列出小于指定大小的文件。下面的列表就是在Linux使用不同“find"命令后系統(tǒng)所要作出的 查找動(dòng)作,從中我們很容易看出在Linux中使用“find”命令的方式是很多的,“find”命令查找文件只要靈活應(yīng)用,絲毫不比在WINDOWS中查 找能力差。
find / -amin -10 # 查找在系統(tǒng)中最后10分鐘訪問(wèn)的文件
find / -atime -2 # 查找在系統(tǒng)中最后48小時(shí)訪問(wèn)的文件
find / -empty # 查找在系統(tǒng)中為空的文件或者文件夾
find / -group cat # 查找在系統(tǒng)中屬于groupcat的文件
find / -mmin -5 # 查找在系統(tǒng)中最后5分鐘里修改過(guò)的文件
find / -mtime -1 #查找在系統(tǒng)中最后24小時(shí)里修改過(guò)的文件
find / -nouser #查找在系統(tǒng)中屬于作廢用戶的文件
find / -user fred #查找在系統(tǒng)中屬于FRED這個(gè)用戶的文件
linux查看路徑命令相關(guān) 文章 :
★ linux查看路徑命令
★ linux如何查找命令的路徑
★ linux查詢路徑命令
★ Linux系統(tǒng)中查看當(dāng)前路徑的命令
★ linux查詢命令路徑
★ Linux中文件查找命令總結(jié)
★ linux查詢目錄命令
★ liunx find(文件查找)命令的介紹
★ Linux系統(tǒng)中tracert命令使用詳解
var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = ""; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })();