一:linux系統的單根目錄結構
linux與windows 的目錄結構對比
目錄
一:linux系統的單根目錄結構
檔案的擴充名
二 系統目錄結構與作用
三 絕對路徑與相對路徑
四 檔案管理
4.1 檔案管理之:基本指令
4.2 檔案管理
建立
複制
移動與删除
4.3 檢視檔案内容
4.4 修改檔案内容
1、什麼是vim
2、為何要用vim
4、vi編輯器的操作模式
3、在vi編輯器中光标的移動
4、在指令行模式下删除與複制的操作
5、粘貼指令
6、複原和重做指令
7、掌握擴充模式下常用的指令
8、掌握快速移動光标在檔案中的位置的指令
9、掌握快速在螢幕中移動光标的位置的指令
10、三種模式下的操作彙總與補充
11、同時編輯多個檔案
12、檔案内容對比
13、vim執行過程
13、練習

linux:一切皆是檔案的設計思想
ls -l 檔案名 僅看的是檔案的修改時間
Linux檔案有
三種時間,用stat檢視
例如:stat anaconda-ks.cfg
通路時間:atime,檢視内容,用cat檢測
修改時間:mtime,修改内容
改變時間:ctime,修改内容,修改權限等屬性,凡是有改動都會變
檔案的擴充名
linux 沒有檔案擴充名
// 方法一:
ls -l 檔案名 //看第一個字元
- 普通檔案(文本檔案,二進制,壓縮檔案,電影,圖檔。。。),例如:/bin/ls
d 目錄檔案(藍色),例如/home/
b 裝置檔案(塊裝置)儲存設備硬碟,U盤,例如:/dev/sda
c 裝置檔案(字元裝置)列印機,例如:終端/dev/tty1
s 套接字檔案,例如:/run/rpcbind.sock
p 管道檔案,例如:/run/systemd/initctl/fifo
l 連結檔案(淡藍色),例如:/bin
ps:通過顔色判斷檔案的類型是錯誤的!!!
// 方法二:
[[email protected] ~]# file /etc/grub.conf
bash shell對檔案進行管理:
- 建立
- 複制
- 删除
- 移動
- 檢視
- 編輯
- 壓縮
- 權限操作
- 查找
二 系統目錄結構與作用
Windows: 以多根的方式組織檔案 C:\ D:\ E:\
Linux: 以單根的方式組織檔案 /
FHS(Filesystem Hierarchy Standard)指的是檔案系統階層化标準,多數Linux版本采用這種檔案組織形式,是以樹形的結構來組織檔案的。
[root@aliyun ~]# ls -l / # /是所有linux作業系統的頂點目錄,不像windows,每個分區都有一個頂點目錄
total 64
# 1、指令相關目錄
lrwxrwxrwx. 1 root root 7 Jul 11 2019 bin -> usr/bin # 普通使用者使用的指令如ls、date
lrwxrwxrwx. 1 root root 8 Jul 11 2019 sbin -> usr/sbin # 管理者使用的指令
#2、啟動目錄
dr-xr-xr-x. 5 root root 4096 Feb 11 19:06 boot # 存放的啟動相關的檔案,例如kernel,grub(引導裝載程式)
#3、系統檔案目錄
drwxr-xr-x. 13 root root 4096 Jul 11 2019 usr # 系統檔案,相當于C:\Windows
lrwxrwxrwx. 1 root root 7 Jul 11 2019 lib -> usr/lib # 庫檔案Glibc
lrwxrwxrwx. 1 root root 9 Jul 11 2019 lib64 -> usr/lib64 # 庫檔案Glibc
#4、使用者家目錄
drwxr-xr-x. 5 root root 4096 Feb 24 16:42 home # 普通使用者家目錄
dr-xr-x---. 11 root root 4096 Jul 8 17:03 root # root使用者的HOME
#5、配置檔案目錄
drwxr-xr-x. 79 root root 4096 Jul 8 17:04 etc # 配置檔案,很重要,系統級服務配置檔案都在這裡
/etc/sysconfig/network-script/ifcfg-*,網絡配置檔案
/etc/hostname,系統主機名配置檔案
/etc/resolv.conf,dns用戶端配置檔案
/etc/hosts,本地域名解析配置檔案
/etc/fstab 系統挂載目錄 開機自啟動挂載清單
/etc/passwd 系統使用者檔案
#6、裝置目錄檔案
drwxr-xr-x 19 root root 2960 Feb 15 17:22 dev # 裝置檔案,/dev/sda /dev/sr0
/dev/cdrom 和/dev/sr0,系統CD光牒鏡像裝置
/dev/null,黑洞裝置,隻進不出。類似于垃圾資源回收筒
/dev/random,生成随機數的裝置
/dev/zero,能源源不斷地産生資料,類似于取款機,随時随地取錢
/dev/pts/0,虛拟的Bash Shell終端,提供給遠端使用者使用 0代表第一個終端 1代表第2個終端
以此類推
/dev/stderr,錯誤輸出
/dev/stdin,标準輸入
/dev/stdout,标準輸出
#7、虛拟檔案系統:類似于小汽車的儀表闆,能夠看到汽車是否有故障,或者是否缺油了。
dr-xr-xr-x 89 root root 0 Feb 15 17:22 proc # 虛拟的檔案系統,反映出來的是核心,程序資訊或實時狀态
反映系統目前程序的實時狀态
/proc/meminfo:記憶體資訊
/proc/cpuinfo:cpu資訊
#8、可變的目錄與臨時目錄
drwxr-xr-x. 19 root root 4096 Jul 11 2019 var #存放的是一些變化檔案,比如資料庫,日志,郵件....
/tmp,系統臨時目錄(類似于公共廁所),系統會定時删除該目錄下長時間沒有通路的檔案。
/var,存放一些變化檔案,如下
mysql: /var/lib/mysql
vsftpd: /var/ftp
mail: /var/spool/mail
cron: /var/spool/cron
log: /var/log 系統日志檔案存放目錄
/var/log/messages系統日志
/var/log/secure系統登入日志
/var/tmp 臨時檔案(主要是程式産生的臨時檔案)
# 9、裝置(主要指儲存設備)挂載目錄
drwxr-xr-x. 2 root root 4096 Apr 11 2018 media # 移動裝置預設的挂載點
drwxr-xr-x. 2 root root 4096 Apr 11 2018 mnt # 手工挂載裝置的挂載點
drwxr-xr-x. 2 root root 4096 Apr 11 2018 opt # 早期第三方廠商的軟體存放的目錄.
drwxrwxrwt. 10 root root 4096 Jul 9 15:16 tmp # 臨時存放檔案,類似于資源回收筒,超過十天自動删除
#10、其他的一些重要目錄
drwx------. 2 root root 16384 Jul 11 2019 lost+found # 孤兒檔案
這個目錄是使用标準的ext2/ext3檔案系統格式才會産生的一個目錄,目的在于當檔案系統發生錯誤時, 将一些遺失的片段放置到這個目錄下。這個目錄通常會在分割槽的最頂層存在, 例如你加裝一顆硬碟于/disk中,那在這個系統下就會自動産生一個這樣的目錄『/disk/lost+found
lost+found這個目錄一般情況下是空的,當系統非法關機後,如果你丢失了一些檔案,在這裡能找回來用來存放fsck過程中部分修複的檔案的
lost+found:幾乎每個被格式化過的Linux分區都會有,意外後找回的檔案一般在這裡面。
這個目錄是儲存發生意外後丢失的檔案的。隻有root使用者才能打開
drwxrwxr-x 6 root root 4096 Feb 23 19:24 application
drwxr-xr-x 25 root root 660 Jul 8 17:00 run # 存放程式運作後所産生的pid檔案
drwxr-xr-x. 2 root root 4096 Apr 11 2018 srv # 實體裝置産生的一些檔案
dr-xr-xr-x 13 root root 0 Feb 16 01:22 sys # 硬體裝置的驅動程式資訊
三 絕對路徑與相對路徑
絕對路徑: 從/開頭的路徑 /home ~alice 相對路徑: 相對于目前目錄開始
. 連結到目前目錄
.. 連結到上一級目錄
~ 目前使用者的家目錄
# 1、絕對路徑示例
touch /home/alice/file1
touch ~alice/file2
# 2、相對路徑示例
touch ../file3
touch file4
touch abc/file5
四 檔案管理
4.1 檔案管理之:基本指令
#1、檢視目前所在的目錄
[[email protected] ~]# pwd
/root
#2、切換目錄
cd 絕對路徑 如:cd /home/alice cd ~alice
cd 相對路徑 如:cd home/alice cd ..
cd - # 傳回上次目錄
cd # 直接回家,等同于cd ~
cd . #保持目前目錄不變
cd .. #切換到目前目錄的上一級目錄
#3、檢視目錄樹:需要先安裝tree指令,執行yum install tree -y
tree -a 目錄 # 顯示所有檔案,包括隐藏檔案
tree -d 目錄 # 隻顯示子目錄
tree -L 1 目錄 # -L 周遊目錄的最大層數,-L後應該是大于0的正整數
tree -F 目錄 # -F 在條目後加上檔案類型的訓示符号,例如會在顯示出的目錄後面加上左斜杠/
[[email protected] ~]# tree /a
/a
├── b
│ ├── 1.txt
│ ├── 2.txt
│ └── 3.txt
├── bb
│ ├── a.txt
│ ├── b.txt
│ └── c.txt
└── bbbb
了解一下tree指令其他選項
-a 顯示所有檔案和目錄。
-A 使用ASNI繪圖字元顯示樹狀圖而非以ASCII字元組合。
-C 在檔案和目錄清單加上色彩,便于區分各種類型。
-d 顯示目錄名稱而非内容。
-D 列出檔案或目錄的更改時間。
-f 在每個檔案或目錄之前,顯示完整的相對路徑名稱。
-F 在執行檔案,目錄,Socket,符号連接配接,管道名稱名稱,各自加上"*","/","=","@","|"号。
-g 列出檔案或目錄的所屬群組名稱,沒有對應的名稱時,則顯示群組識别碼。
-i 不以階梯狀列出檔案或目錄名稱。
-I 不顯示符合範本樣式的檔案或目錄名稱。
-l 如遇到性質為符号連接配接的目錄,直接列出該連接配接所指向的原始目錄。
-n 不在檔案和目錄清單加上色彩。
-N 直接列出檔案和目錄名稱,包括控制字元。
-p 列出權限标示。
-P 隻顯示符合範本樣式的檔案或目錄名稱。
-q 用"?"号取代控制字元,列出檔案和目錄名稱。
-s 列出檔案或目錄大小。
-t 用檔案和目錄的更改時間排序。
-u 列出檔案或目錄的擁有者名稱,沒有對應的名稱時,則顯示使用者識别碼。
-x 将範圍局限在現行的檔案系統中,若指定目錄下的某些子目錄,其存放于另一個檔案系統上,則将該子目錄予以排除在尋找範圍外。
#4、浏覽
ls # 預設浏覽當目錄
ls -l 目錄 # 浏覽目錄下的子目錄子檔案名的詳細資訊
ls -al 目錄 # 浏覽的結果中包含隐藏檔案
ls -dl 目錄 # 檢視目錄
[[email protected] ~]# ll a.txt
-rw-r--r--. 1 root root 0 12月 15 14:02 a.txt
# 各部分解析如下
-rw-r--r--. 權限,後面的點代表是否在selinux開啟的情況下(enforcing或者permissive都屬于開啟)建立的檔案
1 硬連結個數
root 屬主
root 屬組
0 檔案大小,機關位元組
12月 15 14:02 檔案修改時間
a.txt 檔案名字
# 權限的第一個為代表檔案類型
格式 說明
- 普通檔案(文本, 二進制, 壓縮包, 圖檔, 日志等)
d 目錄檔案
b 裝置檔案(塊裝置)儲存設備硬碟 /dev/sda1, /dev/sda2
c 裝置檔案(字元裝置)列印機,終端 /dev/tty1, /dev/zero
s 套接字檔案, 程序間通信(socket)
p 管道檔案
l 連結檔案
注意: Linux檔案擴充名不代表任何含義, 僅僅是為了運維人員便于識别
4.2 檔案管理
建立
#1、=============建立檔案:touch
touch file1.txt //無則建立,有則修改時間
touch /home/file10.txt
touch file{1..20}
touch Ego{n,N}.txt //等價touch Egon.txt EgoN.txt
touch -t 2011111111 2018.rmvb
修改檔案時間 文法:
-t STAMP
use [[CC]YY]MMDDhhmm[.ss] instead of current time
了解檔案的三個時間參數:https://www.cnblogs.com/linhaifeng/articles/13324247.html
#2、=============建立目錄:mkdir
mkdir dir1
mkdir /home/dir2 /home/dir3
mkdir /home/{dir4,dir5}
mkdir -v /home/{dir6,dir7}
mkdir: 已建立目錄 “/home/dir6”
mkdir: 已建立目錄 “/home/dir7”
mkdir -p /home/dir8/111/222 //包括其父母的建立
複制
#1、=============複制:cp
cp 源 目标
cp -v install.log /home/dir1
cp -v install.log /home/dir1/aaa.txt
cp -r /etc /home/dir1
cp install.log /home/dir2
cp anaconda-ks.cfg !$
cp anaconda-ks.cfg /home/dir2
cp -r /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/passwd /etc/grub.conf /etc/hosts .
cp -rv /etc /tmp
\cp -rv /etc /tmp
擴充用法:
cp -rfv /etc/hosts{,.old}
cp -rvf /etc/sysconfig/network-scripts/ifcfg-eth0{,.old}
關于-f參數的一個實驗
[[email protected] ~]# echo "1111" > /opt/a.txt
[[email protected] ~]# echo "2222" > /t2/a.txt
[[email protected] ~]#
[[email protected] ~]# chmod o=wx /t2
[[email protected] ~]# chmod o=- /t2/a.txt
[[email protected] ~]#
[[email protected] ~]# ll -d /t2
drwxr-x-wx 2 root root 4096 Oct 20 00:07 /t2
[[email protected] ~]# ll /t2/a.txt
-rw-r----- 1 root root 5 Oct 20 00:07 /t2/a.txt
[[email protected] ~]#
[[email protected] ~]# su - xxx
Last login: Tue Oct 20 00:05:43 CST 2020 on pts/2
[[email protected] ~]$ cp /opt/a.txt /t2/a.txt # 失敗
cp: cannot create regular file ‘/t2/a.txt’: Permission denied
[[email protected] ~]$ \cp /opt/a.txt /t2/a.txt # 失敗
cp: cannot create regular file ‘/t2/a.txt’: Permission denied
[[email protected] ~]$
[[email protected] ~]$
[[email protected] ~]$ cp -f /opt/a.txt /t2/a.txt # 成功
[[email protected] ~]$ exit
logout
[[email protected] ~]# cat /t2/a.txt
1111
[[email protected] ~]#
========================================================
小知識:root使用者使用cp (預設有一個别名 alias cp='cp -i') -i 顯示提示資訊(是否覆寫)
1. /bin/cp -rf /etc /tmp
2. # unalias cp
# cp -rf /etc /tmp
3. # \cp -rf /etc /tmp
4.-f 參數是強制複制,比如你在A檔案夾裡面有個檔案名叫B,然後你把C檔案夾裡面的另一個檔案名叫B的複制到A裡面,這個時候會照成沖突,然後會提示你要不要繼續複制.加上-f 就不會提示你了.
你輸入-f 還是會提示你的原因是
-------------------------------------------------------------
有的系統在安裝的時候,cp - i 的 alias 就是 cp
也就是說你在執行cp的時候,其實是執行的cp -i
取消掉cp的alias就好了
==========================================
解決辦法
unalias cp
========================================================
移動與删除
#1、=============複制:mv
mv 源 目标
# mv file2 /home/dir3 将file2移動到/home/dir3裡
# mv file4 file5 将file4重命名為file5,目前位置裡的移動就是重命名
#2、=============複制:rm
示例:删除/home/dir1
# cd /home
# rm -rf dir1
-r 遞歸
-f force強制
-v 詳細過程
4.3 檢視檔案内容
==文本檔案 (cat less more head tail grep)
/etc/hosts
/etc/sysconfig/network
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/passwd
/etc/shadow
/etc/group
/etc/grub.conf
/etc/resolv.conf
/var/log/messages //系統的主日志檔案
cat
-n 顯示行号
-A 包括控制字元(換行符)linux $ Windows ^M$
========================================================
擴充知識:
dos2unix 将Windows格式的檔案轉換成Unix格式
unix2dos 将Unix格式的檔案轉換成Windows格式
例如
# unix2dos file1
# dos2unix file2
========================================================
less more head tail
# head /etc/passwd
# head -2 /etc/passwd
# tail /etc/passwd
# tail -1 /etc/passwd
# more /etc/passwd # 使用more指令之後,每次在螢幕上顯示一屏(一頁)的檔案内容,并且在螢幕的尾部将會出現“—More--(n%)”的資訊,其中,n%是已經顯示檔案内容的百分比。按空格下一頁,按b上一頁,more +40 a.txt從第40行開始檢視
# tail -f /var/log/messages //-f 動态檢視檔案的尾部
# logger xxxxxxxxx //手動産生日志資訊
grep 針對檔案内容進行過濾
# grep 'root' /etc/passwd
# grep --color 'root' /etc/passwd
# grep --color '^root' /etc/passwd
# grep --color 'bash$' /etc/passwd
4.4 修改檔案内容
1、什麼是vim
可以了解為windows下面的文本編輯器,比如記事本,比如word文檔。
vi編輯器通常被簡稱為vi,而vi又是visual editor的簡稱。它在Linux上的地位就像Edit程式在DOS上一樣。它可以執行輸出、删除、查找、替換、塊操作等衆多文本操作,而且使用者可以根據自己的需要對其進行定制,這是其他編輯程式所沒有的。
vi 編輯器并不是一個排版程式,它不像Word或WPS那樣可以對字型、格式、段落等其他屬性進行編排,它隻是一個文本編輯程式。沒有菜單,隻有指令,且指令繁多。
2、為何要用vim
1.修改配置
2.寫腳本
3、vi與vim的差別
vi不顯示高亮顔色文法
vim顯示高亮顔色文法。
其他功能沒有什麼差別。
是以在linux系統下,使用vi還是vim取決個人習慣。
預設vi是安裝的 , vim需要通過yum install vim -y
4、vi編輯器的操作模式
#1、指令行模式:在編輯模式下按下ESC鍵傳回指令行模式。
vi的預設模式。在這一模式中,所有的輸入被解釋成vi指令,可以執行修改、複制、移動、粘貼和删除正文等指令,也可以進行移動光标、搜尋字元串和退出vi的操作等。
#2、編輯/插入模式:輸入a、i、o之一
在編輯模式中,可以往一個檔案中輸入正文。在這一模式下,輸入的每一個字元都被vi編輯器解釋為輸入的正文。使用ESC鍵傳回指令行模式。
a:進入插入模式并在光标之後進行添加。
i:進入插入模式并在光标之前進行插入。
o:進入插入模式并在目前(光标所在)行之下開啟新的一行。
#3、擴充/末行模式:輸入冒号:
在一些UNIX系統上也叫最後一行模式。在這一模式下,可以使用一些進階編輯指令,如搜尋和替代字元串、存盤或退出vi編輯器等。要進入最後一行模式,需要在指令行模式中輸入冒号(:),冒号這一操作将把光标移到螢幕的最後一行。
3、在vi編輯器中光标的移動
4、在指令行模式下删除與複制的操作
5、粘貼指令
6、複原和重做指令
7、掌握擴充模式下常用的指令
8、掌握快速移動光标在檔案中的位置的指令
linux檔案管理(基礎)一:linux系統的單根目錄結構二 系統目錄結構與作用三 絕對路徑與相對路徑四 檔案管理
9、掌握快速在螢幕中移動光标的位置的指令
linux檔案管理(基礎)一:linux系統的單根目錄結構二 系統目錄結構與作用三 絕對路徑與相對路徑四 檔案管理
10、三種模式下的操作彙總與補充
vi ===> vim 檔案編輯器
# vim /boot/grub2/grub.cfg
# vim /etc/sysconfig/network-scripts/ifcfg-eth0
指令模式:
a. 光标定位
hjkl
0 $
gg G
3G 進入第三行
/string(n N 可以循環的) 快速定位到某一行
b. 文本編輯(少量)
y 複制 yy 3yy ygg yG (以行為機關)
d .删除 dd 3dd dgg dG (以行為機關)
p 粘貼
x 删除光标所在的字元
D 從光标處删除到行尾
u undo撤銷
^r redo重做
r 可以用來修改一個字元
c. 進入其它模式
a 進入插入模式
i 進入插入模式
o 進入插入模式
A 進入插入模式
: 進入末行模式
^v 進入可視塊模式
R 進入替換模式
插入模式:
^p 唯一補齊
末行模式:
a. 儲存退出
:10 進入第10行
:w 儲存
:q 退出
:wq 儲存并退出
:w! 強制儲存
:q! 不儲存并退出
:wq! 強制儲存退出
:x 儲存并退出
b. 查找替換
:範圍 s/old/new/選項
:1,5 s/Note/yyy/ 從1-5行的Note 替換為yyy
:5,$ s/Note/yyy/ $表示最後一行
:1,$ s/to/xxx/g = :% s/to/xxx/g %表示全文 g表示全局
:4,9 s/^#// 4-9行的以#開頭的替換為空
:% s#/dev/sda#/var/ccc#g
:,8 s/to/xxx/ 從目前行到第8行
c. 讀入檔案/寫檔案
:w
:w /aaa.txt 另存為/aaa.txt
:1,3 w /2.txt
:1 w! /root/ccc.txt 如果目标檔案已經存在則需要加!号
:r /etc/hosts
d. 設定環境
臨時設定:
:set nu 設定行号
:set ic 不區分大小寫
:set ai 自動縮進
:set list
:set nonu 取消設定行号
:set noic
永久的環境:
/etc/vimrc 影響所有系統使用者
~/.vimrc 影響某一個使用者
# vim ~/.vimrc # 在家目錄下新增一個檔案,輸入下述内容
set ic
set nu
# vim -O /etc/hosts /etc/grub.conf ^w 按兩次切換
# vimdiff grub.conf /etc/grub.conf 對比檔案,^w 按兩次切換
# vim -p /etc/hosts /etc/grub.conf ^PgUp, ^PgDn
11、同時編輯多個檔案
#1、
vim -o 檔案1 檔案2 # 水準分隔
vim -O 檔案1 檔案2 # 垂直分隔
使用ctrl + ww切換
#2、
vim -p /etc/hosts /etc/grub.conf
使用 ^PgUp, ^PgDn切換
12、檔案内容對比
# 相同檔案之間差異對比,通常用于對比修改前後的差異。
diff #檔案對比(No)
vimdiff #以vim方式打開兩個檔案對比,高亮顯示不同的内容
# patch實驗:
touch a.txt b.txt
[[email protected] ~]# echo 111 >> a.txt
[[email protected] ~]# echo 222 >> b.txt
[[email protected] ~]# diff -u a.txt b.txt > patch.diff
[[email protected] ~]# patch a.txt patch.diff
patching file a.txt
[[email protected] ~]# cat a.txt
222
13、vim執行過程
==============Vim非正常退出===============
(1)、模拟故障: 編輯檔案的時候斷開連接配接即可(斷網或斷電) 重新連接配接伺服器 再次進行編輯檔案
(2)、故障報錯: Found a swap file by the name ".vim.log.swp" Swap file ".vim.log.swp" already exists
(3)、故障解決: 删除臨時檔案或者先恢複内容再删除 使用-r選項進行恢複。
13、練習
#Vim練習題一
1) 使用vi編輯器編輯檔案/1.txt進入編輯模式寫入内容“hello world”
2) 進入指令行模式複制改行内容,在下方粘貼80行
3) 快速移動光标到檔案的最後一行
4) 快速移動光标到目前螢幕的中間一行
5) 快速移動光标到檔案的第五行
6) 在下方插入新的一行内容“welcome to beijing”
7) 删除剛插入的一行
8) 撤銷上一步的操作
9) 進入擴充模式,執行檔案的儲存退出操作
10) 修改相應檔案,内容如下:
#Vim練習題二
1.将/etc/passwd 複制到/root/目錄下,并重命名為test.txt
2.用vim打開test.txt并顯示行号
3.分别向下、向右、向左、向右移動5個字元,分别向下、向上翻兩頁
4.把光标移動到第10行,讓光标移動到行末,再移動到行首,移動到test.txt檔案的最後一行,移動到檔案的首行
5.搜尋檔案中出現的 root 并數一下一共出現多少個
6.把從第一行到第三行出現的root 替換成admin,然後還原上一步操作
8.把整個檔案中所有的root替換成admin
9.把光标移動到20行,删除本行,還原上一步操作
11.删除從5行到10行的所有内容,還原上一步操作
12.複制2行并粘貼到11行下面,還原上一步操作(按兩次u)
13.複制從11行到15行的内容并粘貼到8行上面,還原上一步操作(按兩次u)
14.把13行到18行的内容移動檔案的尾部,還原上一步操作(按兩次u)
15.将檔案中所有的/sbin/nologin為/bin/bash
16.在第一行下面插入新的一行,并輸入"# Hello!"
17.儲存文檔并退出
#Vim練習題三
根據檔案回答下列習題
[[email protected] ~]# cat proxy.conf
server {
Listen 8080;
Server_Name vim.OldboyEDU.com;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $http_host;
proxy_set_header X-Forward-for;
proxy_intercept_errors on;
proxy_next_upstream error timeout;
proxy_next_upstream_timeout 3s;
proxy_next_upstream_tries 2;
error_page 500 502 403 404 = /proxy_error.html;
}
location = /proxy_error.html {
root /code/proxy;
}
}
1.使用vim打開proxy.conf檔案
2.修改Listen為listen小寫,并将8080修改為80
3.修改Server_Name為server_name小寫。
4.修改vim.OldboyEDU.com為vim.oldboy.com
5.在server_name行下插入一行 root /code;
6.複制5-14行的内容,然後将其粘貼到14行下面
7.删除與proxy_set_header相關的兩行全部删除
8.如上操作完成後,在13-20行前面加上#号
9.删除21-23的行,然後儲存目前檔案