Linux上vim编辑器快捷键/快捷命令详解,chattr和lsattr命令介绍

目录

一.vim

1.vim编辑器简介

2.vim内功能及快捷键/命令详解

(1)命令、末行、插入三种模式的切换方式

(2)命令模式下的操作

(3)插入模式下的操作

(4)末行模式下的操作   

二.文件隐藏属性的含义及作用

1.chattr设置文件的隐藏权限

(1)chattr命令的参数解析

(2)charttr部分参数演示

2.lsattr查看文件的隐藏权限


一.vim

1.vim编辑器简介

vim编辑器是Linux的标准软件之一,同Linux操作系统一并安装,主要用于文本编辑/程序编写,极为方便。

vim主要设计了命令模式、末行模式、插入模式,在几种模式内都可以使用快捷键,大大提高使用效率。

vim编辑器的主要配置文件在"/etc/vimrc"下,可以在配置文件内修改编辑器的操作参数。

2.vim内功能及快捷键/命令详解

(1)命令、末行、插入三种模式的切换方式

末行模式和插入模式不能直接切换,都需要返回到命令模式才能互换模式

vim一个文件,如果文件不存在则表示新建文件并编辑

[root@sulibao ~]# vim file1

进入时默认是命令模式 

1be3e09f093f49fdb1980ad64199d23c.png

按:a、i、o:键进入插入模式,按esc键退出插入模式回到命令模式

按"(shift+):"键进入末行模式,按esc键退回到命令模式

(2)命令模式下的操作

命令模式下的文本快速查看操作 

操作实现功能
上/k、下/j、左/h、右/l方向键控制光标上、下、左、右移动
ctrl+F/ ctrl+B控制往下翻一页内容/往上翻一页内容

(FN)+Home键,(FN)+ ^键,数字0键。

(FN)+End键,(FN)+ $ 键

控制光标跳转至行首或行尾
单击数字1键+大写G键/双击小写gg控制光标跳转至首行
单击大写G控制光标跳转至末行
数字+单击大写G控制光标跳转至数字指定行
:set nu/:set nonu:属于是末行模式的用法(下文介绍),但有时候为了方便跳转可以设置行号/取消行号
:set ignorecase/noignorecase查找字符(串)时忽略大小写/区分大小写

命令模式下对文本的复制、粘贴、删除等快捷操作

操作实现功能
yy/数字+yy复制光标所在行/复制从光标开始的几行内容
p/P将复制的内容粘贴到光标后/光标前
x键/delete键删除光标所在的单个字符
dd/数字+dd删除光标所在行/删除从光标开始的几行内容
d^/d$

删除光标前到行首的所有字符(光标所在字符使用d^不会删除)/到行尾的所有字符

命令模式下快速查找指定文本以及撤销等快捷操作

操作实现功能
/字符(串)从上到下查找字符(串)
?字符(串)从下到上查找字符串
n/N跳转到下一个相匹配的字符(串)/跳转到上一个相匹配的字符(串)
u/U单击或多击小写u可以撤销最近的一次或多次操作/大写U可以撤销所有当前行的编辑操作
Ctrl+R取消上一步或多步撤销操作
ZZ保存当前文件内容并退出

(3)插入模式下的操作

按"a、i、o"键进入插入模式后(o键进入会在光标后换行) 移动光标进行正常的文本写入再保存即可

(4)末行模式下的操作   

按"(shift+):"进入插入模式

末行模式常用来做保存文件、退出vim编辑器以及设置行号等操作

操作实现功能
:w保存当前文件
:w /xx/xx将当前文件保存为其他文件(另存为)
:q / :q!没有修改内容退出/默认放弃所做修改强制退出vim编辑器
:wq/ :wq!保存文件并退出/强制保存文件并退出
:set nu / set nonu为文本设置行号/为文本取消行号
:set ignorecase/noignorecase查找字符(串)时忽略大小写/区分大小写

对此文件以及其他文件进行读取、查找替换等操作

操作实现功能
:s /a/b(/g)将当前行查找到的a字符替换为b字符,加/g表示将当前行中查找到的所有a字符替换为b字符
:数字,数字 s/a/b/g将哪行到哪行之间查找到的a字符全部替换为b字符
:% s/a/b/g将全文范围内查找到的a字符全部替换为b字符
:s /a/b/c对替换字符文本的动作产生确认提示
:g/数字/d查找到哪一行并删除此行
:n1,n6 co n2复制n1-n6行的内容粘贴至n2后面
:r 文件路径读取目标文件内容并载入到当前文本光标所在处

操作部分特殊设置

操作实现功能
:set autoindent设置语法缩进
:set shiftwidth=数字设置vim内tab键等于多少个空格键

二.文件隐藏属性的含义及作用

Linux文件的隐藏属性顾名思义就是部分属性(权限)被隐藏起来,新增隐藏权限较难通过一般权限的方式查看,使得文件/目录的安全性提高,受违规篡改的可能性相对降低。

一般是通过“+”表示为文件增加权限,“-”为文件去除权限

1.chattr设置文件的隐藏权限

(1)chattr命令的参数解析

参数实现功能
i

对文件赋予该参数表示无法对文件进行修改;

对目录赋予该权限则表示只能修改目录内的子文件,不能新建或者删除文件

a只能追加内容,无法覆盖内容
A不准再修改这个文件或目录的最后访问时间
s把文件从硬盘中删除,无法找回
S文件内容受到更改后立即同步到硬盘
b不准再修改文件或目录的存取时间
d备份时(dump命令)不对此文件/目录进行备份
D检查压缩文件中所存在的错误
c默认对文件或目录进行压缩
x支持直接访问压缩文件中的内容

(2)charttr部分参数演示

i参数,为文件设置,无法更改文件

[root@sulibao aaa]# touch abc
[root@sulibao aaa]# chattr +i abc
[root@sulibao aaa]# vim abc

若为目录设置,无法在目录内新建文件和删除文件

[root@sulibao ~]# chattr +i /aaa
[root@sulibao ~]# cd /aa
[root@sulibao ~]# cd /aaa/
[root@sulibao aaa]# ll
total 0
-rw-r--r-- 1 root root 0 Jan 13 19:49 abc
[root@sulibao aaa]# touch qq.txt
touch: setting times of 'qq.txt': No such file or directory
[root@sulibao aaa]# rm -rf abc
rm: cannot remove 'abc': Operation not permitted

 a参数,只能追加内容不能覆盖内容

[root@sulibao aaa]# chattr +a abc
[root@sulibao aaa]# date >abc
-bash: abc: Operation not permitted
[root@sulibao aaa]# date >>abc
[root@sulibao aaa]# cat abc
Fri Jan 13 19:59:52 CST 2023

2.lsattr查看文件的隐藏权限

演示:先为文件赋予i和a隐藏权限,分别使用常规查看和lsattr查看

[root@sulibao aaa]# chattr +a +i abc
[root@sulibao aaa]# ll
total 4
-rw-r--r-- 1 root root 29 Jan 13 19:59 abc
[root@sulibao aaa]# lsattr abc
----ia-------------- abc

通过lsattr来查看便于考虑实际情况来新增或删除隐藏权限

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

树下一少年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值