必備知識:linux下對文件的編輯操作 首先給出的是vi的基礎 後面會有詳細的遠程連接Centos的方法
vi的基本概念
基本上vi可分為三種操作狀態,分別是命令模式(Command mode)、插入模式(Insert mode)和底線命令模式(Last line mode),
各模式的功能區分如下:
1. Comand mode:控制屏幕光標的移動,字符或光標的刪除,移動復制某區段及進入Insert mode下,或者到Last line mode。
2. Insert mode:唯有在Insert mode下,才可做文字數據輸入,按Esc等可回到Comand mode。
3. Last line mode:將儲存文件或離開編輯器,也可設置編輯環境,如尋找字符串、列出行號等。
進入vi的命令
vi filename :打開或新建文件,並將光標置於第一行首
vi +n filename :打開文件,並將光標置於第n行首 (這裡的加號是真實輸入)
vi + filename :打開文件,並將光標置於最後一行首
vi +/pattern filename:打開文件,並將光標置於第一個與pattern匹配的串處
vi -r filename :在上次正用vi編輯時發生系統崩潰,恢復filename
vi filename....filename :打開多個文件,依次進行編輯
移動光標類命令
h :光標左移一個字符
l :光標右移一個字符
space:光標右移一個字符
Backspace:光標左移一個字符
k或Ctrl+p:光標上移一行
j或Ctrl+n :光標下移一行
Enter :光標下移一行
w或W :光標右移一個字至字首
b或B :光標左移一個字至字首
e或E :光標右移一個字至字尾
) :光標移至句尾
( :光標移至句首
}:光標移至段落開頭
{:光標移至段落結尾
nG:光標移至第n行首
n+:光標下移n行
n-:光標上移n行
n$:光標移至第n行尾
H :光標移至屏幕頂行
M :光標移至屏幕中間行
L :光標移至屏幕最後行
0:(注意是數字零)光標移至當前行首
$:光標移至當前行尾
插入文本類命令 (切換至命令模式方法:esc鍵 ->命令 -> 回車)
i :在光標前
I :在當前行首
a:光標後
A:在當前行尾
o:在當前行之下新開一行
O:在當前行之上新開一行
r:替換當前字符
R:替換當前字符及其後的字符,直至按ESC鍵
s:從當前光標位置處開始,以輸入的文本替代指定數目的字符
S:刪除指定數目的行,並以所輸入文本代替之
ncw或nCW:修改指定數目的字
nCC:修改指定數目的行
刪除命令
ndw或ndW:刪除光標處開始及其後的n-1個字
do:刪至行首
d$:刪至行尾
ndd:刪除當前行及其後n-1行
x或X:刪除一個字符,x刪除光標後的,而X刪除光標前的
Ctrl+u:刪除輸入方式下所輸入的文本
退出(保存或不保存退出)命令
:wq 強制性寫入文件並退出。即使文件沒有被修改也強制寫入,並更新文件的修改時間。
:x 寫入文件並退出。僅當文件被修改時才寫入,並更新文件修改時間,否則不會更新文件修改時間。
:q! 不保存文件並退出vi
然後下面
在虛擬機上安裝了CentOS 7,當時選擇了最小安裝模式,安裝完成後馬上用ifconfig查看本機的ip地址(局域網已經有DHCP),發現報錯,提示ifconfig命令沒找到。
[root@centos1 ~]# ifconfig
-bash: ifconfig: command not found
首先,習慣性的輸入echo $PATH(查看當前PATH環境變量,跟DOS的path命令一樣的功能,注意Linux系統中的命令是區分大小寫的),顯示結果如下:
[root@centos1 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
從上面顯示結果看,放置系統管理程序的路徑/usr/sbin已存在,就是放外部命令的路徑。直接用ls查看/usr/sbin/目錄,也沒看到ifconfig,怎麼回事?
[root@centos1 ~]# ls /usr/sbin/
我還是不死心,再用find命令也沒找到ifconfig?
[root@centos1 ~]# find / -name "ifconfig"
此時心裡有底了,應該是用某個命令代替了ifconfig了。上百度一查,果不其然,已經用ip命令代替ifconfig命令了。下面列出ip命令常用參數。
ip [選項] 操作對象{link|addr|route...}
輸入ip addr命令後,發現enp2s0網卡(這個enp2s0是我這裡的網卡)沒有ip地址。
[root@centos1 ~]# ip addr
既然沒有ip地址,那直接去/etc/sysconfig/network-scripts目錄中看一下的網卡ip信息的配置文件名吧。
[root@centos1 ~]# ls /etc/sysconfig/network-scripts/
ifcfg-enp2s0 ifdown-eth ifdown-post ifdown-Team ifup-aliases ifup-ipv6 ifup-post ifup-Team init.ipv6-global
ifcfg-lo ifdown-ippp ifdown-ppp ifdown-TeamPort ifup-bnep ifup-isdn ifup-ppp ifup-TeamPort network-functions
ifdown ifdown-ipv6 ifdown-routes ifdown-tunnel ifup-eth ifup-plip ifup-routes ifup-tunnel network-functions-ipv6
ifdown-bnep ifdown-isdn ifdown-sit ifup ifup-ippp ifup-plusb ifup-sit ifup-wireless
從結果看,之前保存網卡ip信息的配置文件名也由以前的ifcfg-eth0變成了ifcfg-enp2s0,好吧,既然你給他命這麼個名,那我就先用著。先cat一下ifcfg-enp2s0
[root@centos1 ~]# cat /etc/sysconfig/network-scripts/ifcfg-enp2s0
HWADDR=00:E0:69:01:6A:96
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=enp2s0
UUID=5b0a7d76-1602-4e19-aee6-29f57618ca01
ONBOOT=no
從上面的配置中有看到雖然BOOTPROTO=dhcp,但是ONBOOT=no,這裡用vi將ONBOOT=no改成ONBOOT=yes,然後重啟CentOS。
[root@centos1 ~]# shutdown -r
重啟完成後輸入帳號和密碼進入命令提示操作符繼續用ip addr查看網卡信息。結果如下:
[root@centos1 ~]# ip add
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:e0:69:01:6a:96 brd ff:ff:ff:ff:ff:ff
inet 172.8.1.200/24 brd 172.8.1.255 scope global enp2s0
valid_lft forever preferred_lft forever
inet6 fe80::2e0:69ff:fe01:6a96/64 scope link
valid_lft forever preferred_lft forever
從上面結果看到,通過DHCP分配到的ip地址是172.8.1.200,雖然是測試機,但為了便於今後的遠程連接,我們還是給這台機配置一個固定ip吧。
用vi打開ifcfg-enp2s0,輸入以下參數,再用#將BOOTPROTO=dhcp注釋。
IPADDR0=172.8.1.211
PREFIX0=24
GATEWAY0=172.8.1.1
DNS1=172.8.1.1
完整參數如下,好了,網絡配通了。明天繼續其它功能測試。
[root@centos1 ~]# cat /etc/sysconfig/network-scripts/ifcfg-enp2s0
HWADDR=00:E0:69:01:6A:96
TYPE=Ethernet
#BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=enp2s0
UUID=5b0a7d76-1602-4e19-aee6-29f57618ca01
ONBOOT=yes
IPADDR0=172.8.1.211
PREFIX0=24
GATEWAY0=172.8.1.1
DNS1=172.8.1.1
設置好虛擬機的ip地址後,我們就可以很方便的來遠程連接操作虛擬機了
http://xxxxxx/Linuxjc/1175967.html TechArticle