内容摘要
vim介紹
vim顔色顯示和移動光标
vim一般模式下的移動光标
一般模式下複制剪切粘貼
進入編輯模式
指令模式
vim實踐
課堂擴充相關
涉及指令:vim(強大的文本編輯指令,vi的加強版);
一、vim介紹
vim是vi的更新版本
vim是帶有顔色顯示的(與vi最明顯的一個差別)
使用指令yum install -y vim-enhanced
vim一共有三種模式:
一般模式:dd指令,把一行删除,複制某行粘貼等。
編輯模式:進入編輯模式需要按【i】這個按鍵過程,用鍵盤對文檔字、符進行修改,還有回車、換行等。
指令模式:像less指令,/+關鍵字,可以查找等。把文檔裡的123改為456,可以批量操作的。包括:wq也是指令模式。
二、vim顔色顯示和移動光标
相同的檔案在不同的目錄下,就有可能會導緻顔色不存在;在centos裡面/etc/下面的檔案往往是配置檔案,在/etc/下面就會顯示顔色,把它放到其他地方它就不會顯示顔色,這是它的一個特性。
但是/etc/fstab移到/tmp/passwd仍然有顔色,這是為什麼呢?這是因為vim的顔色還與檔案的具體内容有關系,不隻如此,它的顔色還與檔案名字有關。(如内容中添加#開頭的内容或者檔案名字尾更改為.sh結尾時原本沒有顔色的内容也會顯示顔色)
vim有自己的配置檔案:/etc/vimrc
在使用者家目錄下也可以配置vim的配置檔案,預設是不存在的,例: /root/.vimrc
四、vim一般模式下的移動光标
一般模式下移動光标:如圖所示
空格也是向右移動一個字元的,但是在空格鍵和h、l、k、j鍵前面加上數字,光标就會移動到你指定數字的行列去。
五、一般模式下複制剪切粘貼
快捷鍵x表示向後删除一個字元,X表示向前删除一個字元
快捷鍵n+x 向後删除n個字元
快捷鍵dd 删除/剪切光标所在的那一行
快捷鍵ndd(n為number縮寫,即行數),删除/剪切光标所在行之後的n行
快捷鍵yy 複制光标所在行
快捷鍵nyy n為number縮寫,即行數),從光标所在行開始,向下複制n行
快捷鍵p 從光标所在行開始,向下粘貼已經複制或者粘貼的内容
快捷鍵P(大寫) 從光标所在行開始,向上粘貼已經複制或者粘貼的内容
快捷鍵u 還原上一步操作(最多恢複50次);Ctrl+r反向恢複。
快捷鍵v 按v後移動光标會選中指定字元,然後可以實作複制、粘貼等操作
六、進入編輯模式
進入編輯模式:
1.可以進入到了可以編輯文本文檔的一種模式。
2.不同的按鍵方式可以産生不同的作用。
3.快捷鍵 i 在目前字元前插入
4.快捷鍵 I在光标所在的行行首插入
5.快捷鍵o在目前行的下一行插入新的一行
6.快捷鍵O在目前行的上一行插入新的一行
7.快捷鍵a在目前字元後插入
8.快捷鍵A在光标所在行的行尾插入
9.在編輯模式中,判斷一行是否是同一行,可以看右下角的行列提示,或者用上下鍵操控光标移動觀看。
七、指令模式
指令/word 向光标之後查找一個字元串word,按n向後繼續搜尋
指令?word 向光标之前查找一個字元串word,按n向前繼續搜尋
指令:n ,n2s/word1/word2/g 在n1-n2行之間查找word1并替換為word2,不加g則隻替換每行的第一個 word1
指令:1,$s/word1/word2/g 将文檔中所有(不指定)的word1替換為word2,不加g則隻替換每行的第一個word1
特殊情況:需要替換的内容本身帶有/号,用\對指令進行脫義,也可以用“#”或者“@”來代替“\”進行脫義。
指令:w 儲存文本
指令:q 退出vim
指令:w! 強制儲存,在root使用者下,即使文本隻讀也可以完成儲存
指令:q! 強制退出,所有改動不生效
指令:wq 儲存并退出
指令:set nu 顯示行号
指令:set nonu 不顯示行号
當某些内容是高亮的時候,你不想看高亮時,可以輸入指令:nohl
指令:x在更改檔案之後去操作的效果和:wq是一摸一樣的。如果打開檔案但沒有操作過,使用:wq它會更改mtime更改你檢視檔案那一刻的時間,使用:x則不會更改mtimes
八、vim實踐
首先複制實驗的檔案:cp /etc/dnsmasq.conf /tmp/1.txt
1.分别向下、向右、向左、向上移動6個字元(6j 6l 6h 6k)。
2.分别向下、向上翻兩頁(分别按兩次ctrl+f和ctrl+b)。
3.把光标移動到第49行(49G)。
4.把光标移動到行尾,再移動到行首(Shift+4, Shift+6)。
5.移動到1.txt檔案的最後一行(G)。
6.移動到檔案的首行(gg)。
7.搜尋檔案中出現的“dnsmasq”,并數一下該字元串出現的次數(/dnsmsq 然後按n)。
8.把從第1行到第10行出現的dnsmasq替換成dns(:1,10s/dnsmasq/dns/g)。
9.還原上一步操作(u)。
10.把整個檔案中所有的etc替換成cte(:1,$s/etc/cte/g)。
11.把光标移動到第25行,删除字元串 “ly”(25G 然後按l向右移動光标找到"ly",按v選中,然後按x)。
12.還原上一步操作(u)。
13.删除第50行(50G dd)。
14.還原上一步操作(u)。
15.删除第37-42行的所有内容(37G 6dd)。
16.還原上一步操作(u)。
17.複制第48行的内容并粘貼到第52行下面(48G yy 52G p)。
18.還原上一步操作(u)。
19.複制第37-42行的内容并粘貼到第44行上面(37G 6yy 44G P)。
20.還原上一步操作(按u)。
21.把第37-42行的内容移動到第19行下面(37G 6dd 19G p)。
22.還原上一步操作(按u)。
23把光标移動到首行,把第1行内容改為“#!/bin/bash”(先按gg,把光标定位到第1行,然後按字母A,進入編輯模式,同時>光标到行末尾,進行修改操作,完成後按ESC)。
24.在第1行下面插入新的一行,并輸入“# Hello!”(按o進入編輯模式,同時光标向下另起一行,輸入“# Hello!”)。
25.儲存文檔并退出(按Esc鍵,輸入“:wq”)。
================================================直播課後筆記======================================================
九、su指令
指令 su 是切換使用者使用的,在這裡加一個“-”表示徹底切換到jimmy使用者下包括自己的配置和環境變量,就在自己的家目錄。
普通使用者顯示為$符号,root使用者顯示為#符号。
十、visudo指令
在visudo裡面也可以設定指令别名:Cmnd_Alias AMING_CMD = /usr/bin/ls, /usr/bin/mv, /usr/bin/cat 如圖:
在visudo裡面還可以設定使用者組,比如把多個使用者放到wheel一個組裡面,相同組裡面的使用者名都可以執行授予的指令。
十一、df指令
df 顯示檔案系統的磁盤使用情況統計,如圖:
第一列:磁盤分區的名字
第二列:磁盤的總大小,機關kb
第三列:已用多少
第四列:可用多少
第五列:已用百分比
磁盤分區情況: lsblk
系統檔案格式:ext2 ext3 ext4 xfs NTFS fat32 fat64
十二、du指令
du指令也是檢視使用空間的,但是與df指令不同的是Linux du指令是對檔案和目錄磁盤使用的空間的檢視,還是和df指令有一些差別的。
十三、MBR和GPT擴充
磁盤按接口分為:IDE、SATA、SAS、SCSI、USB‘
IDE磁盤名稱一般為:hd【a-z】,【a-z】代表第幾塊磁盤
SATA磁盤、SAS硬碟、SCSI硬碟、USB磁盤名稱一般為:sd【a-z】,【a-z】代表第幾塊磁盤
第一塊sata磁盤表示為:/dev/sda
第二塊sata磁盤表示為/dev/sdb
底下列出幾個常見的裝置與其在Linux當中的檔名,如圖:
MBR的優缺點
優點:MBR支援32bit和64bit系統;
缺點:MBR支援的分區數量有限制、MBR隻支援不超過2TB的硬碟,超過2TB的硬碟隻能使用2TB的空間(但是有第三方解決方法),應為MBR的尋址空間隻有32bit長。
GPT相關
支援超過2TB的磁盤:GPT有64bit尋址空間。
向後相容MBR。
但是底層硬體必須支援UEFI(Intel提出的取代BIOS的新一代的引導系統)才能使用,也就是底層硬體必須使用UEFI。
必須使用64位作業系統。
Mac、LInux系統都能支援GPT分區格式。
Windows 7 64bit、Windows Server2008 64bit支援GPT。
十四、DAS、SAN、NAS擴充
根據伺服器類型分為:
封閉系統的存儲(封閉系統主要指大型機)
開放系統的存儲(開放系統指基于Windows、UNIX、Linux等作業系統的伺服器)
開放系統的存儲分為:内置存儲和外挂存儲。
外挂存儲根據連接配接的方式分為:直連式存儲(Direct-Attached Storage,簡稱DAS)和網絡化存儲(Fabric-Attached Storage,簡稱FAS);網絡化存儲根據傳輸協定又分為:網絡接入存儲(Network-Attached Storage,簡稱NAS)和存儲區域網絡(Storage Area Network,簡稱SAN)。看下圖,可以清晰的了解剛才的描述。
常見三種存儲架構 DAS、NAS、SAN
DAS存儲:直連式存儲Direct-Attached Storage。DAS存儲更多的依賴伺服器主機作業系統進行資料的IO讀寫和存儲維護管理,資料備份和恢複要求占用伺服器主機資源(包括CPU、系統IO等),資料流需要回流主機再到伺服器連接配接着的錄音帶機(庫),資料備份通常占用伺服器主機資源20-30%,是以許多企業使用者的日常資料備份常常在深夜或業務系統不繁忙時進行,以免影響正常業務系統的運作。直連式存儲的資料量越大,備份和恢複的時間就越長,對伺服器硬體的依賴性和影響就越大。
NAS存儲:網絡接入存儲Network-Attached Storage。NAS存儲也通常被稱為附加存儲,顧名思義,就是儲存設備通過标準的網絡拓撲結構(例如以太網)添加到一群計算機上。NAS是檔案級的存儲方法,它的重點在于幫助工作組和部門級機構解決迅速增加存儲容量的需求。如今使用者采用NAS較多的功能是用來文檔共享、圖檔共享、電影共享等等,而且随着雲計算的發展,一些NAS廠商也推出了雲存儲功能,大大友善了企業和個人使用者的使用。
SAN存儲:存儲區域網絡Storage Area Network。SAN提供了一種與現有LAN連接配接的簡易方法,并且通過同一實體通道支援廣泛使用的SCSI和IP協定。SAN不受現今主流的、基于SCSI存儲結構的布局限制。特别重要的是,随着存儲容量的爆炸性增長,SAN允許企業獨立地增加它們的存儲容量。SAN的結構允許任何伺服器連接配接到任何存儲陣列,這樣不管資料置放在那裡,伺服器都可直接存取所需的資料。因為采用了光纖接口,SAN還具有更高的帶寬。
應用場景
DAS雖然比較古老了,但是還是很适用于那些資料量不大,對磁盤通路速度要求較高的中小企業;
NAS多适用于檔案伺服器,用來存儲非結構化資料,雖然受限于以太網的速度,但是部署靈活,成本低;
SAN則适用于大型應用或資料庫系統,缺點是成本高、較複雜。
轉載于:https://my.oschina.net/u/3992047/blog/2254040