linx之vi相关问题

问题一:按q键退出vi编辑器时出现如图所示问题

原因:问你已被修改,没有保存并退出。

解决办法: 按q!强制退出即可。

问题二: 用vi打开文件时,如下图所示:

原因:

这是由于在编辑该文件的时候异常退出了,因为vim在编辑文件时会创建一个交换文件swap file以保证文件的安全性。

但是这可就郁闷了,因为以后每次打开这个文件都会出现这个警告,不管是如何修改这个文件还是重启了电脑。为了去掉这个警告,我们需要删除这个swap文件:

解决办法: rm -rf .a.swap

问题三: 从windwos上传到linux下的文件打开时乱码

原因: 由于Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8,两边编码不一致所导       致的

解决办法:

那么如何在Linux中如何查看文件的编码及如何进行对文件进行编码转换呢?

用VIM查看文件编码在Vim 中可以直接查看文件编码:set fileencoding  即可显示文件编码格式。

如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱码的问题,那么你可以在~/.vimrc 文件中添加以下内容(无此文件可新建):set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936 这样,就可以让vim自动识别文件编码(可以自动识别UTF-8或者GBK编码的文件)。

时间: 2024-11-12 01:10:15

linx之vi相关问题的相关文章

vi相关命令

vi相关命令在行首加#        :% s/^/#        删除#        :% s/#//在行末加#        :% s/$/#        删除        :% s/#$//删除2,5行     :2,5d            删除空行(不挨着的)        :g/^ *$/d把1到3行下复制到第九行下        :1,3co 9把第2,3行下的内容保存到root下的newabc.txt            :2,3w /root/newabc.txtv

vi相关使用

vi编辑器的工作模式 命令模式:主要完成鼠标移动.字符串查找.删除.复制.粘贴. 输入模式:主要修改.添加. 末行模式:主要设置vi编辑环境.保存文件.退出编辑器.查找.替换. 行间快速跳转        gg跳转文本的第一行 G跳转支文本的最后一行 #G跳转到文本的指定行(#用具体行号替换) set nu     \\显示行号 set nonu \\取消显示行号 复制 l   yy复制所光标所在行 l   #yy复制从光标开始的#行内容(#用具体数字替换). 粘贴 l   p粘贴到光标所在位置

vi相关内容

vi显示行号: 第一种是,手动显示:在vim命令行模式下输入 :set nu 取消显示:在vim命令行模式下输入: set nonu 第二种是,永久自动显示:我们修改一个配置文件. 我们输入命令:vim ~/.vimrc 打开后是一个空文件,我们添加 set nu,保存退出,再次进入vim编辑器,就会自动显示出行号了.

vi相关

vi有三种模式: 命令模式:键盘的任意输入都当成"编辑命令": 输入模式:键盘的任意输入都当成文本内容: 末行模式:键盘的任意输入都当成"文本管理命令" 命令模式(刚打开)==>(i,a,o)输入模式(反向Esc) 命令模式==>(shift+:)末行(反向Esc*2) 末行模式: set nu :显示行号 wq/x :保存退出:q!:不保存退出 命令模式: ZZ(大写):保存退出 i/a :光标前/后一个字符: I/A:行首/尾: O/o:上/下一行输

从报错no crontab for user/ vi exit with status 1看crontab

问题描述: 启动定时脚本check mac 机器与jenkins平台的连接 crontab -e */5 * * * * sh check.sh :q退出后报错形如: 为什么执行crontab命令出现的报错是和vi相关呢?crontab背后是如何实现的?发现起初使用crontab并未真实理解,只是使用. 原因: Google后,很多回答在说修改vim配置等,https://superuser.com/questions/359580/error-adding-cronjobs-in-mac-os

arm linux 启动之二:start_kernel到创建1号进程

本文介绍arm linux启动的第二部分,C语言编写,主要讲述start_kernel到1号进程的创建.主要讲述大概过程,以后再对子函数进行讲解. 一.start_kernel start_kernel位于init/main.c,主要完成linux一些子系统的初始化. 1)smp_setup_processor_id() 单CPU位为空. 2)lock_kernel() 锁CPU,linux是支持抢占的,多CPU时调用这个函数防止其他CPU抢占.3)tick_init() 时间相关初始化4)bo

网格形变算法(Laplacian-Based Deformation)

网格上顶点的Laplace坐标(均匀权重)定义为:,其中di为顶点vi的1环邻域顶点数. 网格Laplace坐标可以用矩阵形式表示:△=LV,其中,那么根据网格的Laplace坐标通过求解稀疏线性方程组可以得到网格的顶点坐标. 基于网格Laplace形变算法的思想:网格上顶点的Laplace坐标作为网格的细节特征,其在网格形变前后的局部坐标系内不发生变化.Laplace形变问题可以用如下数学优化形式表达,那么问题的关键是如何得到网格形变后的Laplace坐标,或者说是每个顶点Laplace坐标的

lamp网站部署

应公司要求在 Vsphere client部署备用网站,以便备用,不要问为什么有虚拟化任性. 环境centos6.5 直接用yum安装环境,新机器做下初始话一个脚本公司同事写的: #!/bin/bash# Program:#       system_init_shell# History:# Release:#       1.1cat << EOF +--------------------------------------------------------------+ |     

网格简化技术研究报告

网格简化技术研究报告 吕伟 问题及场景 超大场景环境下,为了精细.真实的塔模型,采用分级简化铁塔和绝缘子串模型的方法,利用PageLOD分页细节层次的机制,在不同范围下展现不同精细程度的外观. 简化模型要求速度快.质量高.文件体积小等特点. 网格简化的算法分类 删减法 删减法是目前算法中采用最多的一种模型简化操作.该方法通过重复依次删除对模型特征影响较小的几何元素并重新三角化来达到简化模型的目的.根据删除的几何元素的不同,通常又可以分成顶点删除(Vertex removal)法.边折叠(Edge