Linux--Linux的简介和Vim的使用
LInux简介
Linux的发展要素
- UNIX操作系统
- Minix操作系统
- GUN计划
- POSIX标准
- Internet网络
LInux内核版本
内核编号形如:主版本号.次版本号.主补丁号.次补丁号
Linux的系统架构
进程调度:
- SCHED_ORTHER:针对普通进程的时间片轮转调度策略,给所有进程分配时间片,当前进程时间片用完后,从进程优先级最高的进程选择运行
- SCHED_FIFO:针对运行的实时性要求比较高,运行时间短的进程调度策略。系统按照进入队列的先后进行进程的调度
- SCHED_RR:针对实时性要求比较高,运行时间比较长的调度策略。系统分配时间片,将事件片耗尽的进程放入队尾
内存管理MMU
内存管理的主要概念是虚拟内存,分配策略是每个进程公平的使用内存
虚拟文件系统VFS
Linux中支持多种文件系统,最常用的是ext2和ext3,ex3是ex2加上日志之后的文件
网络接口
Linux支持多种网络接口,网络接口分为网络协议和驱动程序,网络协议是网络传输的通信标准,网络驱动则是对于硬件设备的驱动程序
进程间通信
Linux下进程间通信方式主要有:管道方式,消息队列方式,信号方式,共享内存和套接字等方法
Linux的文件结构
常用的文件目录如下所示
- /etc:Linux系统引导所需要的配置文件
- /lib:包含C编程所需要的函数库,是一组二进制文件
- /usr:包括所有其他内容
- /var:包含系统定义表,以便在系统运行改变时可以只备份该目录
- /tmp:用于临时存储
- /bin:大多数命令放在这里
- /home:主要用于存放用户账号
- /dev:在这个目录下存放一种设备文件的特殊文件
- /mnt:在Linux系统中,专门给外挂的文件系统使用的。分别是cdrom,floopy,登录光驱,软驱
Linux编程环境
Linux环境下的编辑器
Vim是Linux环境下编译器的一种,基于文本编辑器。
Vim使用简介
Vim的安装
在使用Vim编译器之前要先使用Vim安装包,如果没有安装Vim可以使用如下命令进行安装
#apt-get install vim (centos 要转换成yum)
Vim编辑器的模式
Vim主要分为普通模式和插入模式,普通模式是命令模式,插入模式是编辑模式
在插入模式下可以进行字符的输入,输入的键值显示在编辑框中,这些文本用于编辑
普通模式进行命令操作的,输入的值代表一个命令
插入模式和普通模式的切换分别为按i键和Esc键
使用Vim建立文件
Vim的命令模式是“vim 文件名”,一般来说建立文件如下操作
建立文件
使用Vim建立一个新文件的命令行格式为“vim 文件名”。使用如下命令建立一个hello.c的C语言源文件,同时将文件打开
$vim hello.c
进入插入模式
打开文件后,默认情况下进入普通模式。按i键,进入插入模式
文本输入
退出Vim
编译完成后,按Esc键退出插入模式回到普通模式,输入“: wq”退出Vim编辑器
运行命令ls:
$ls -l
输入的wq是保存后退出的意思,当不想进行保存时,输入":“后输入"q!”,Vim会直接退出,不保存所做修改。q!代表强制退出
辅助工具vimtutor
使用Vim编辑文本
Vim的编辑命令有很多,介绍Vim下移动光标,进行删,查,复制,跳转等操作
移动光标h(左),j(下),k(上),l(右)[也可以使用方向键]
删除字符
删除一个字符可以用x,普通模式下,光标移动到需要删除的字符上然后按x键
删除一整行用dd
恢复删除用u
Ctrl+r是一个特殊命令:为取消一个命令
复制粘贴p,y
Vim下的粘贴命令为p,作用是将内存中的字符复制到光标的后面。
例如将一行复制到某个地方,可以使用dd删除,并使用u命令恢复,这时候内存中是dd命令删除的字符串。将光标移动到插入的行之前,使用p命令可以把内存中的字符串复制后放置在选定的位置。
y(即yark)是复制命令,将指定的字符串复制到内存中,yw命令用于复制单词,可以指定复制的单词量,y2w用于复制两个单词
查找字符串“/”
查找字符串的命令是"/xxx" 其中xxx代表要查找的字符
“:/printf”
查找结果按“n“移动到上一个匹配的字符串上,按"N"移动到下一个字符串上
跳转到某一行g
编写或者修改程序的过程中,经常需要跳转到某一行
命令“:n”让光标转到某一行,或者使用nG,n为要跳转的行数,G为大写
Vim 格式设置
仅介绍常用格式
设置缩进
合理的缩进使4程序更加清晰,对C语言程序实现缩进,设定cindent选项;需要设置下一行的缩进长度设置shiftwidth选项。
:set cindent shiftwidth=4
设置Tab的空格数量
不同编辑器对Tab键移动距离是不同的。对于Tab键需要设置
":set tabstop=n"设置Tab键对应空格的数量
设置行号
":set number"使代码头部有行号数值
Vim配置文件.vimrc
可以在.vimrc文件中进行修改
set shiftwidth = 2 #缩进宽度
set tabstop = 2 #Tab键宽度
set number #显示行号
使用其他编辑器
在使用Windows编辑器时注意换行符
Windows:回车+换行
UNIX:换行
如果Windows下没有保存为UNIX格式,在Linux下可以使用dos2UNIX进行转换
$dos2UNIX hello.c
Linux--Linux的简介和Vim的使用相关推荐
- linux wc 命令简介
此wc命令不是让大家没有食欲的地方.而是linux下一个简单的小命令. NAME wc - word, line, character, and byte count SYNOPSIS wc [-cl ...
- linux下的vi与vim
vi与vim vi编辑器是所有Unix及Linux系统下标准的编辑器,他就相当于windows系统中的记事本一样,它的强大不逊色于任何最新的文本编辑器.他是我们使用Linux系统不能缺少的工具.由于对 ...
- Kali Linux 安全渗透教程第二更Linux安全渗透简介
第1章 Linux安全渗透简介 渗透测试是对用户信息安全措施积极评估的过程.通过系统化的操作和分析,积极发现系统和网络中存在的各种缺陷和弱点,如设计缺陷.技术缺陷.本章将简要介绍Linux安全渗透及 ...
- linux下源码安装vim,ubuntu 源码编译安装最新的vim 8.0
为什么要源码编译安装VIM? 因为我要安装ycm,但是ubuntu14.04仓库vim版本低 教程步骤: 1, 核对系统版本 2, 删除系统自带的vim 3, 编译安装vim 4, 检验vim的安装 ...
- 资料收集新一代 Linux 文件系统 btrfs 简介
来自: http://www.ibm.com/developerworks/cn/linux/l-cn-btrfs/ Btrfs 简介 文件系统似乎是内核中比较稳定的部分,多年来,人们一直使用 ext ...
- 面向dba的linux shell 脚本简介,面向 DBA 的 Linux Shell 脚本简介
DBA:Linux 面向 DBA 的 Linux Shell 脚本简介 作者:CasimirSaternos 学习一些在 Linux 上安装.运行和维护 Oracle 数据库所需的基本 bash sh ...
- Linux Namespace机制简介
最近Docker技术越来越受到关注,作为Docker中很重要的一项技术,Namespace也就经常在Docker的简介里面看到. 在这里总结一下它的内部机制.也解决一下自己原来的一些疑惑. Names ...
- [转] Windows完成端口与Linux epoll技术简介
Windows完成端口与Linux epoll技术简介 2008-01-03 16:18 WINDOWS完成端口编程1.基本概念 2.WINDOWS完成端口的特点 3.完成端口(Completion ...
- Linux系统中VI或VIM输入时小键盘无法使用
Linux系统中VI或VIM输入时小键盘无法使用 问题描述 在使用Xshell.Webshell或者PuTTY连接Linux服务器时经常会用到VIM对文件进行编辑.这是就会发现,小键盘无法使用.想输入 ...
- Linux安全原理简介
Linux安全原理简介 介绍 在设置Linux计算机的所有阶段,安全性应是首要考虑之一.要在计算机上实施良好的安全策略,需要对Linux的基础知识以及所使用的某些应用程序和协议有充分的了解. Linu ...
最新文章
- 学习鸟哥的Linux私房菜笔记(4)——文件
- 【实用】ABAP ALV单元格修改信息提示
- hive和hbase区别和联系
- 前端学习(1979)vue之电商管理系统电商系统之让文本框获得焦点
- 11.m进制转十进制
- 使用 Flomesh 强化 Spring Cloud 服务治理
- 【ES9(2018)】Object Rest Spread
- docker mysql镜像 使用_docker下MySQL镜像的使用方法
- 网游源码完整服务端_【每日源码】微人事是一个前后端分离的人力资源管理系统,项目采用SpringBoot+Vue开发。...
- win10python安装失败_python3.6 + win10 安装 python-Levenshtein 错误记录
- 物联网的“最好”与“最坏”之间往往只差了一个“安全”
- 动态代理和静态代理的区别_动态代理与静态代理
- →箭头符号大全复制_特别符号大全,特殊符号大全
- 正则表达式-验证手机号与邮箱
- MCU控制继电器的电路详解
- XiaoZi's CrackMe
- mysql分组取最新时间的数据
- 社保交了24年,还有十几年才到退休年龄。还有必要继续交下去吗?
- window7电脑如何调亮度
- fork和lockf应用