Linux在VMware虚拟机中安装Ubuntu系统及vim的三大模式
安装配置ubuntu
安装准备
vittualbox-5.2.22版本(win10)
ubuntu-12.04
安装VirtualBox
1.双击VirtualBox-5.2.2-119230-Win,默认安装。
2.新建—》名称ubuntu(可自定) 类型:linux 版本:ubuntu64/ubuntu32都可以
3.设置虚拟内存大小:至少1G(1024M)
4.现在创建虚拟硬盘:VDI格式—》固定大小—》10G—》文件位置(选一个足够大的空间)
挂载镜像
设置—》存储—》光盘—》选择要挂载的系统镜像
安装系统
1.选择简体中文—》安装Ubuntu—》检查安装条件—》(不要选择安装时更新)并继续—》清除整个磁盘并安装ubuntu,然后继续—》选择要安装的磁盘(如果只有一个硬盘就不用选了),现在安装。
2.开始安装Ubuntu—》设置时区(上海)—》设置语言(中文)—》设置用户名和密码。
3.安装完成后:重启—》回车键启动系统。
4.系统设置—》有可用更新—》设置—》新版本时通知我(从不),Ubuntu软件—》下载自—》选163服务器。
5.sudo apt-get update //更新源文件
6.sudo apt-get upgrade //更新操作系统
7.安装增强包:设备—》安装增强功能—》输入密码—》enter结束,关机。
8.共享文件夹:关机状态下设置—》共享文件夹—》点击加号—》选择共享目录(路径中不要有中文)—》勾选自动挂载—》点击确认—》点击确认重新启动系统
9.终端输入:sudo usermod -aG vboxsf [用户名], 然后重启 //给共享文件访问权限
10.sudo apt-get install typespeed //安装typespeed
11.sudo apt-get install vim // 安装编辑器
12.sudo apt-get install g++ //安装编译器
vim的三大模式
正常模式 (主要负责阅读,修改代码)
插入模式(编写代码)
行底模式 (主要负责配置vim执行vim相关的命令,行底模式的配置不是.vimrc里的配置,它的配置只是临时有效)
正常模式下常用的命令
Linux下一切都是文件,目录也是特殊的文件
vim 在终端直接输入vimtutor,就可以学习一些常用的命令。
sudo reboot:重启
sudo init 0:关机
dd: 删除全行(其实是剪贴 eg:5dd 剪贴5行 —> p:粘贴5行)
d$: 删除从当前光标到行末($:代表行末)
dw: 删除从当前光标到光标所在字符串的末尾
x: 剪贴光标所在的字符 —> p:粘贴在光标后面(mian直接用)
u: 撤销 Ctrl+R 回复(已经撤销的部分)
r+newchar:替换光标当前的一个字符为newchar(INS功能一样)
R(大写)是连续替换 和键盘 INSERT 功能一样
cp -frp 复制目录
%:查找匹配的括号
i o a s都是插入 但有区别(其中s:删除光标前一个然后插入)
:s/old/new <回车> //光标所在行的第一个old
:s/old/new/g <回车> //光标所在行的每一个old
:num1,num2s/old/new/g <回车> //num1-num2行之间的每一个old
:%s/old/new/g <回车> //改变整个文件中的每一个old (>>oldnum会变为newnum)
tar -zcvf【压缩包名】 【文件名】 //压缩 .tar.gz
tar -zxvf【压缩包名】 //解压
ln 【old】 【new】 //硬链接,
ln -s 【old】 【new】 //软链接 ,
find 【目录(可有可无)】【文件名】
linux :ifconfig //网络查询 win:ipconfig
插入模式
Ctrl+i 相当与制表符,Tab键
Ctrl+p 代码补全
Ctrl+j 回车符
Ctrl+c 返回正常模式
行底模式
1.执行系统命令:!cmd,执行完成后输入enter 返回vim
2.对vim进行配置,
3.set nu//显示行号
4.set num//取消显示行号
配置文件 .vimrc
主目录下的.vimrc //刚安装好的没有这个隐藏文件,需要我们自己创建。此文件配置之后立即生效
.vimrc配置可以参考https://blog.csdn.net/lovewebeye/article/details/79960675
也可以参考https://www.cnblogs.com/ma6174/archive/2011/12/10/2283393.html
安装VirtualBox 可以参考https://jingyan.baidu.com/article/25648fc19e948d9191fd00a7.html
安装系统 可参考https://blog.csdn.net/weixin_40539892/article/details/79494922
- Spring+SpringMVC+MyBatis+easyUI整合优化篇(九)数据层优化-jdbc连接池简述、druid简介
- webpack配置别名alias出现的错误匹配
- 在Java程序中处理数据库超时与死锁
- 如何用TensorFlow和TF-Slim实现图像标注、分类与分割
- Spring+SpringMVC+MyBatis+easyUI整合优化篇(六)easyUI与富文本编辑器UEditor整合
- 使用shell脚本查看数据库负载情况(第二篇)(r3笔记第92天)
- tensorflow LSTM + CTC实现端到端OCR
- Spring+SpringMVC+MyBatis+easyUI整合优化篇(七)图片上传功能
- 黑客比程序员牛在哪?
- oracle工具集初探(r4笔记第8天)
- Spring+SpringMVC+MyBatis+easyUI整合优化篇(二)Log4j讲解与整合
- 京东JData算法大赛-高潜用户购买意向预测(github源码)
- 巧用linux命令做图片下载器(r4笔记第7天)
- Spring+SpringMVC+MyBatis+easyUI整合优化篇(四)单元测试实例
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Kubernetes 1.19.0——服务svc(2)
- Android菜单的定义及ActionBar的实现
- 3分钟短文:Laravel表单验证的“指挥中心”:FormRequest
- 10 种跨域解决方案(附终极方案)
- 架构师教你kill祖传石山代码重复/大量ifelse
- TKE集群,一次磁盘挂载问题处理
- Linux Load Average详解
- 5. Bean Validation声明式验证四大级别:字段、属性、容器元素、类
- 使用Docker镜像
- Qt音视频开发39-人脸识别在线版
- 前端学数据结构与算法(九):常见五种排序算法的实现及其优缺点
- 用最容易的方式学会单链表(Python实现)
- 突击并发编程JUC系列-万字长文解密 JUC 面试题
- 《剑指Offer》-- 题目一:找出数组中重复的数字(Python多种方法实现)
- 用最复杂的方式学会数组(Python实现动态数组)