@@ -671,20 +671,22 @@ Linux系统的命令通常都是如下所示的格式:
671671
6726722. 命令模式、编辑模式和末行模式:启动vim进入的是命令模式,在命令模式下输入英文字母`i`会进入编辑模式,屏幕下方出现`-- INSERT --`提示;在编辑模式下按下`Esc`会回到命令模式,此时如果输入英文`:`会进入末行模式,在末行模式下输入`q!`可以在不保存当前工作的情况下强行退出vim,如果希望执行保存退出,则应该在末行模式下输入`wq`。
673673
674- 3. 光标操作。
674+ 3. 退出vim:在命令模式下输入`:` 进入末行模式,输入wq可以实现保存退出;如果想放弃编辑的内容输入`q!`强行退出,这一点刚才已经提到过了;在命令模式下也可以直接输入`ZZ`实现保存退出。
675+
676+ 4. 光标操作。
675677
676678 - 在命令模式下可以通过`h`、`j`、`k`、`l`来控制光标向左、下、上、右的方向移动,可以在字母前输入数字来表示移动的距离,例如:`10h`表示向左移动10个字符。
677679 - 在命令模式下可以通过`Ctrl+y`和`Ctrl+e`来实现向上、向下滚动一行文本的操作,可以通过`Ctrl+f`和`Ctrl+b`来实现向前和向后翻页的操作。
678680 - 在命令模式下可以通过输入英文字母`G`将光标移到文件的末尾,可以通过`gg`将光标移到文件的开始,也可以通过在`G`前输入数字来将光标移动到指定的行。
679681
680- 4 . 文本操作。
682+ 5 . 文本操作。
681683
682684 - 删除:在命令模式下可以用`dd`来删除整行;可以在`dd`前加数字来指定删除的行数;可以用`d$`来实现删除从光标处删到行尾的操作,也可以通过`d0`来实现从光标处删到行首的操作;如果想删除一个单词,可以使用`dw`;如果要删除全文,可以在输入`:%d`(其中`:`用来从命令模式进入末行模式)。
683685 - 复制和粘贴:在命令模式下可以用`yy`来复制整行;可以在`yy`前加数字来指定复制的行数;可以通过`p`将复制的内容粘贴到光标所在的地方。
684686 - 撤销和恢复:在命令模式下输入`u`可以撤销之前的操作;通过`Ctrl+r`可以恢复被撤销的操作。
685687 - 对内容进行排序:在命令模式下输入`%!sort`。
686688
687- 5 . 查找和替换。
689+ 6 . 查找和替换。
688690
689691 - 查找操作需要输入`/`进入末行模式并提供正则表达式来匹配与之对应的内容,例如:`/doc.*\.`,输入`n`来向前搜索,也可以输入`N`来向后搜索。
690692 - 替换操作需要输入`:`进入末行模式并指定搜索的范围、正则表达式以及替换后的内容和匹配选项,例如:`:1,$s/doc.*/hello/gice`,其中:
@@ -693,15 +695,21 @@ Linux系统的命令通常都是如下所示的格式:
693695 - `c` - confirm:替换时需要确认。
694696 - `e` - error:忽略错误。
695697
696- 6 . 参数设定:在输入`:`进入末行模式后可以对vim进行设定。
698+ 7 . 参数设定:在输入`:`进入末行模式后可以对vim进行设定。
697699
698700 - 设置Tab键的空格数:`set ts=4`
701+
699702 - 设置显示/不显示行号:`set nu` / `set nonu`
703+
700704 - 设置启用/关闭高亮语法:`syntax on` / `syntax off`
705+
701706 - 设置显示标尺(光标所在的行和列): `set ruler`
707+
702708 - 设置启用/关闭搜索结果高亮:`set hls` / `set nohls`
703709
704- 7. 高级技巧
710+ > 说明:如果希望上面的这些设定在每次启动vim时都能生效,需要将这些设定写到用户主目录下的.vimrc文件中。
711+
712+ 8. 高级技巧
705713
706714 - 比较多个文件。
707715
@@ -725,11 +733,19 @@ Linux系统的命令通常都是如下所示的格式:
725733
726734 
727735
728- - 映射快捷键。
729- - `:inoremap key code`
730- - `:map key code`
736+ - 映射快捷键:在vim下可以将一些常用操作映射为快捷键来提升工作效率。
737+ - 例子1:在命令模式下输入`F4`执行从第一行开始删除10000行代码的操作。
738+
739+ `:map <F4> gg10000dd`。
740+
741+ 例子2:在编辑模式下输入`__main`直接补全为`if __name__ == ' __main__' :`。
742+
743+ `:inoremap __main if __name__ == ' __main__' :`
744+
745+ > 说明:如果希望映射的快捷键每次启动vim时都能生效,需要将映射写到用户主目录下的.vimrc文件中。
731746
732747 - 录制宏。
748+
733749 - 在命令模式下输入`qa`开始录制宏(其中`a`是寄存器的名字,也可以是其他英文字母或0-9的数字)。
734750
735751 - 执行你的操作(光标操作、编辑操作等),这些操作都会被录制下来。
@@ -788,6 +804,13 @@ Complete!
788804nginx version: nginx/1.12.2
789805```
790806
807+ 下面以MySQL为例,演示如何使用rpm安装软件。
808+
809+ ```Shell
810+
811+
812+ ```
813+
791814#### 下载解压配置环境变量
792815
793816下面以安装MongoDB为例,演示这类软件应该如何安装。
@@ -858,11 +881,10 @@ build environment:
858881 [root@iZwz97tbgo9lkabnat2lo8Z ~]# yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
859882 [root@iZwz97tbgo9lkabnat2lo8Z ~]# make && make install
860883 [root@iZwz97tbgo9lkabnat2lo8Z ~]# ln -s /usr/local/python36/bin/python3.6 /usr/bin/python3
861- [root@iZwz97tbgo9lkabnat2lo8Z ~]# ln -s /usr/local/python36/bin/pip3 /usr/bin/pip3
862- [root@iZwz97tbgo9lkabnat2lo8Z ~]# ln -s /usr/local/python36/bin/2to3-3.6 /usr/bin/2to3
863884 [root@iZwz97tbgo9lkabnat2lo8Z ~]# python3 --version
864885 Python 3.6.5
865886 [root@iZwz97tbgo9lkabnat2lo8Z ~]# python3 -m pip install -U pip
887+ [root@iZwz97tbgo9lkabnat2lo8Z ~]# pip3 --version
866888 ```
867889
8688902. 安装Redis-3.2.12。
@@ -890,24 +912,66 @@ build environment:
890912
891913### 配置服务
892914
893- 1. systemctl start / stop / restart / status
894- 2. systemctl enable / disable
895- 3. 计划任务 - **crontab**。
896- 4. 开机自启。
915+ 1. 启动服务。
916+ 2. 终止服务。
917+ 3. 重启服务。
918+ 4. 查看服务。
919+ 5. 设置是否开机自启。
920+
921+ ### 计划任务
922+
923+ 1. **crontab**命令。
924+ 2. crontab相关文件。
897925
898926### 网络访问和管理
899927
9009281. 通过网络获取资源 - **wget**。
901929 - -b 后台下载模式
902930 - -O 下载到指定的目录
903931 - -r 递归下载
904- 2. 显示/操作网络配置(旧) - **ipconfig**。
932+
933+ 2. 显示/操作网络配置(旧) - **ifconfig**。
934+
935+ ```Shell
936+
937+
938+ ```
939+
9059403. 显示/操作网络配置(新) - **ip**。
941+
942+ ```Shell
943+
944+
945+ ```
946+
9069474. 网络可达性检查 - **ping**。
948+
949+ ```Shell
950+
951+
952+ ```
953+
9079545. 查看网络服务和端口 - **netstat**。
955+
956+ ```Shell
957+
958+
959+ ```
960+
9089616. 安全文件拷贝 - **scp**。
962+
963+ ```Shell
964+
965+
966+ ```
967+
9099687. 安全文件传输 - **sftp**。
910969
970+ ```Shell
971+
972+
973+ ```
974+
911975### Shell和Shell编程
912976
9139771. 通配符。
0 commit comments