linux文件管理(补充)
linux文件管理
vim编辑器
vi概述
vi 编辑器 他是linux和unix系统上最基本的文本编辑器,类似于windows系统下的记事本编辑器
vim编辑器
vim是vi的加强版,比vi更容易使用。vi的命令几乎全部都可以在vim上使用
命令模式
使用vim编辑器时,默认处于命令模式。在该模式下可以移动光标位置,可以通过快捷键对文件 内容 进行复制 粘贴,删除等操作
编辑模式或输入模式
在命令模式下输入小写字母a或者小写字母i即可进入编辑模式,在该模式下可以对文件的内容进行编辑
末行模式
在命令模式下输入冒号;即可进入末行模式,可以在末行输入命令来对文件进行查找替换保存退出
可视化模式(了解)
可以做一些列选操作(通过方向键选贼某些列的内容)
vim四种模式的关系
命令模式
命令模式/编辑模式/末行模式/可视化模式
vim四种模式的关系
vim编辑器的使用
使用vim打开文件
基本语法
# vim 文件名称
如果文件存在,则直接打开
如果文件不存在,则vim编辑器自动在内存中创建一个新文件
vim编辑器保存文件
在任何模式下,连续按两次esc键,即可返回命令模式,然后按冒号: 进入末行模式,输入wq,代表保存并退出
vim编辑器不保存文件退出
在任何模式下,连续按两次esc键,即可返回命令模式,然后按冒号: 进入末行模式,输入q!,代表强制退出但不保存文件
命令模式下我们能做什么
- 移动光标
- 复制粘贴
- 剪切复制删除
- 撤销恢复
移动光标到首行或末行(重点)
- 移动光标到首行=>gg
- 移动光标到末行=>G
翻屏
向上 翻屏 ctrl +b
向下 翻屏 ctrl +f
向上翻半屏 ctrl +u
向下翻半屏 ctrl +d
快速定位光标到指定位置
行号+G 如 150 G 快速移动光标到150行
复制与粘贴
复制当前行(光标所在行)
按键:yy
粘贴:在想要粘贴的地方按下p键,[将粘贴的光标所在行的下一行],如果想粘贴在光标所在行之前,则使用P键
从当前行开始复制,复制指定的行数(复制5行)5yy(从当前行开始往下复制5行)
剪切/删除/撤销/恢复
剪切/删除光标所在行
按键:dd(删除之后下一行上移)
注意:严格意义上说,dd时剪切命令,如果剪切了不粘贴,就是删除的效果了。
剪切/删除当前行
按键:D
撤销: u
恢复; ctrl+r(恢复),取消之前的操作
末行模式下的相关操作
如何进入末行模式
进入末行模式的方法只有一种,在命令模式下输入冒号:的方式即可进入。
末行模式下我们能做什么
文件的保存,退出,查找,替换,显示行号paste模式等
保存=>:w
退出 =>:q,先保存后退出。:wg :wg 文件名称 :q!
查找功能 =>命令模式输入/斜杠 +关键词(高亮显示)=>:noh
替换功能
/要替换的关键词/替换后的关键词
/要替换的关键词/替换后的关键词/g
:%s/要替换的关键词/替换后的关键词
:9s/要替换的关键词/替换后的关键词/8
显示行号 =>:set nu取消行号 =>:set nonu
paste模式 => 将来在粘贴代码的时候为了保存原格式 → 粘贴之前 =>:set paste
编辑模式操作
编辑模式的作用
编辑模式的作用:主要是实现对文件的内容进行编辑模式
如何进入编辑模式
首先进入命令模式,然后小写字母i或者小写字母a,进入编辑模式。
命令模式+i :在光标之前插入内容
命令模式+a:在光标之后插入内容
退出编辑模式
按esc直接退出
在可视化模式下为配置文件添加多行注释
第一步:按Esc退出到命令模式,按gg切换到第1行
第二步:然后按Ctrl+v进入到可视化区块模式(列模式 )
第三步:在行首使用上下键选择需要注释的多行
第四步:按下键盘(大写)“I”键,进入插入模式(shift+i)
第五步:输入#号注释符
第六步:输入完成后,连续按两次ESc即可完成添加多行注释的过程
为配置文件去除#多行注释(重点)
第一步:按Esc退出到命令模式,按gg切换到第1行
第二步:然后按Ctrl+v进入可视化区块模式(列模式)第三步:使用键盘上的方向键的上下选中需要移除的#号注释第四步:直接按Delete键即可完成删除注释的操作
代码着色
之前说过vim 是v的升级版本,其中比较典型的区别就是vim 更加适合coding,因为vim比vi多一个代码着色的功能,这个功能主要是为程序员提供编程语言升的语法显示效果,如下
第一步:定义后缀名为网页文件的代码文件
# vim index.php
第二步:编写对应php代码
<?php
echo 'hello world'
?>
退出vim
回顾:在vim中,退出正在编辑的文件可以使用:q 或者 :wq
除了上面的这个语法之外,vim 还支持另外一个保存退出(针对内容)方法:x
①:x 在文件没有修改的情况下,表示直接退出(等价于:q),在文件修改的情况下表示保存并退出(:wq)
② 如果文件没有被修改,但是使用wq 进行退出的话,则文件的修改时间会被更新;但是如果文件没有被修改,使用x进行退出的话,则文件修改时间不会被更新的;主要是会混淆用户对文件的修改时间的认定。
查看文件内容
cat命令
# cat 文件名
正序输出文件内容
tac命令
# tac 文件名
倒序输出文件内容
cat补充内容:
cat 文件1 文件2 文件3 ...>文件4
功能解释:将文件1,文件2,文件3的内容合并,并且重新起名为文件4
linux文件管理(补充)的更多相关文章
- Linux文件管理相关命令
Linux文件管理相关命令 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在了解了Linux文件管理背景知识之后, 我们可以 ...
- Linux文件管理上
Linux文件管理 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 对于计算机来说,所谓的数据就是0和1的序列.这样的一个序列 ...
- Linux文件管理和编辑常用命令
Linux文件管理和编辑常用命令 mkdir 命令 功能说明 mkdir 命令用于创建一个目录,mkdir是make directory的缩写 格式: mkdir [选项] 目录名 mkdir 命令的 ...
- 转 Linux文件管理
Linux文件管理 http://www.cnblogs.com/vamei/archive/2012/09/09/2676792.html 作者:Vamei 出处:http://www.cnblog ...
- 3-2 LInux文件管理
LInux文件管理 文件系统目录结构 Linux中目录结构是有一定的约定的FHS /bin:存放二进制程序 /boot:启动相关 /dev:设备文件 /etc:配置文件 /home:用户家目录 /li ...
- linux文件管理--压缩打包
目录 linux文件管理--压缩打包 1.压缩打包介绍 2.gzip压缩工具 3.zip压缩工具 注意: 4.tar压缩工具 5.tar生产案例实践 linux文件管理--压缩打包 1.压缩打包介绍 ...
- day58:Linux:BashShell&linux文件管理&linux文件下载上传
目录 1.BashShell 2.Linux文件管理 3.Linux文件下载和上传 BashShell 1.什么是BeshShell? 命令的解释,用来翻译用户输入的指令 2.BashShell能做什 ...
- 3-1 Linux文件管理类命令详解
根据马哥Linux初级 03-01整理 1. 目录管理 ls cd pwd mkdir rmdir tree 2. 文件管理 touch stat file rm cp mv nano 3. 日期时间 ...
- Linux文件管理_1
在Linux中,全部都是文件,所以文件管理在Linux上格外重要,在我们学习文件管理前,我们先学习几个关于文件的命令,之后才能更好的学习文件管理. 目录 pwd命令 cd命令 列出文件内容ls 查看文 ...
- linux(5)--补充(管道| / 重定向> / xargs)/find 与xargs结合使用/vi,grep,sed,awk(支持正则表达式的工具程序)
本节中正则表达式的工具程序 grep,sed和awk是重点,也是难点!!! 先补充一下一. 管道| / 重定向> / xargs 如:1. 管道和重定向的区别:具体可以见 http://www. ...
随机推荐
- C/C++可变参数模版和函数指针的结合
目录 1.说明 2.模板类传入固定参数的C函数指针 3.模板类传入固定参数的C++函数指针 3.1.用函数对象替代函数指针存储 4.模板类传入不定参数的C函数指针 5.模板类传入不定参数的C++成员函 ...
- 飞桨paddlespeech语音唤醒推理C INT8 定点实现
前面的文章(飞桨paddlespeech语音唤醒推理C定点实现)讲了INT16的定点实现.因为目前商用的语音唤醒方案推理几乎都是INT8的定点实现,于是我又做了INT8的定点实现. 实现前做了一番调研 ...
- Java21 + SpringBoot3集成七牛云对象存储OSS,实现文件上传
目录 前言 实现步骤 引入maven依赖 修改配置文件 创建七牛云配置类 创建文件操作服务类 创建文件操作控制器 前端实现 运行效果 总结 前言 近日心血来潮想做一个开源项目,目标是做一款可以适配多端 ...
- 23.1 SEH之终止处理--《Windows核心编程》结构化异常处理
(structured exception handing)SEH 包含终止处理和异常处理.本章讨论终止处理. 一.终止处理 终止处理程序确保不管一个代码块(被保护代码)如何退出的,另一个代码块(终止 ...
- ResponseUtil jackson 转换问题;返回结果与 Bean 之间的转换,推荐使用convertValue
/** * 若成功往往有data数据 * 示例: * UserBase userBase = new UserBase(); * userBase.setUserName("李昱鑫" ...
- 阿里巴巴 ali1688 Date +0800的问题
package com.example.testredis.controller; import java.text.DateFormat; import java.text.ParseExcepti ...
- MySQL的CTE(公用表表达式)
(一)概念 MySQL的CTE是在MySQL8.0版本开始支持的,公用表表达式是一个命名的临时结果集,仅在单个SQL语句(例如select.insert.delete和update)的执行范围内存在. ...
- NC24605 [USACO 2011 Ope S]Corn Maze
题目链接 题目 题目描述 This past fall, Farmer John took the cows to visit a corn maze. But this wasn't just an ...
- 【XInput】游戏手柄模拟鼠标动作
老周一般很少玩游戏,在某宝上买了一堆散件,计划在过年期间自己做个机械臂耍耍.头脑中划过一道紫蓝色的闪电,想起用游戏手柄来控制机械臂.机械臂是由树莓派(大草莓)负责控制,然后客户端通过 Socket U ...
- 【Unity3D】角色控制器(CharacterController)
1 简介 控制角色移动的组件主要有:Transform 组件.Rigidbody 组件.CharacterController 组件.Transform 组件通过控制角色位置实现移动,Rogidb ...