热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

Linux系统入门之管道、vim用法补充

1.管理输入输出在系统中普通用户执行findetc-namepasswd,由于用户权限,出现以下情况:在Linux系统中,

1.管理输入输出

在系统中普通用户执行find /etc -name passwd,由于用户权限,出现以下情况:

在Linux系统中,正确输出的编号为1,错误输出编号为2

因此&#xff0c;以上述命令为例,阐述>,2>,&>,> ,2>, &>,>file,>>,2>>,&>>,以及<<的相关用法。

(1) find /etc -name passwd > file1   定向正确输出

(2) find /etc -name passwd 2> file2   定向错误输出

(3) find /etc -name passwd &>file3   定向所有输出

(4)> file   清空file

注意&#xff1a; 

    >, 2> ,&>  都会覆盖源文件内容

    用 2>&1 可以把错误的输出编号由2变成1&#xff0c;反之则不行

上面显示输出的内容正是未导入文件的残余部分

            >/dev/null      表示屏蔽正确内容输出

           2>/dev/null      表示屏蔽错误内容输出

例如&#xff1a;在student用户下查找/etc下passwd文件&#xff0c;屏蔽错误输出

下面的>>,2>>,&>>命令的不同在于&#xff0c;只是追加文件内容&#xff0c;并不会覆盖

 find /etc -name passwd >>file     追加正确输出

 find /etc -name passwd 2>> file     追加错误输出

 find /etc -name passwd &>> file     追加所有输出

2.管道的作用
    “|” 管道的作用是把前一条命令的输出变成后一条命令的输入

注意&#xff1a;
    管道只允许正确输出通过
    通过管道的输入将会变成输入&#xff0c;而变成输入的这些输出是会被第二条命令处理的
    如果需要保存输出内容&#xff0c;那么需要复制一份输出&#xff0c;用到的命令是“tee”

例如&#xff1a;ls /bin | wc -l    统计ls /bin 命令输出的行数

用tee命令复制date命令的输出到file中&#xff0c;并统计输出行数

3.输入重定向命令<<

<<之后的字符表示开始&#xff0c;当再次出现相同的字符时停止输入&#xff0c;此字符可自定义

用到改密码中十分方便

常规改密码操作

使用该命令修改密码

4.vim命令补充

&#xff08;1&#xff09;在vim的命令模式下可以配置vim的工作方式

:set nu        行号添加

:set nonu           取消行号



:set mouse&#61;a        添加鼠标选择 

:set cursorline     行线显示

注意&#xff1a;以上设定都是临时

如果要永久设定以上方式&#xff0c;用法如下&#xff1a;

vim /etc/vimrc 此文件为vim的配置文件&#xff0c;在此文件最后加入以上参数&#xff0c;即可。

 

然后退出并保存&#xff0c;即可。

建议&#xff1a;当文件内容更改信息不确定正确与否的时&#xff0c;应该先备份要所更改的文件&#xff01;&#xff01;&#xff01;

然后再打开vim &#xff0c;行数可见&#xff0c;并且是永久的&#xff0c;以上命令均可&#xff0c;不再赘述。

&#xff08;2&#xff09;vim命令模式下关键字搜索

/关键字    ###后面的关键字会被搜索然后高亮显示出来

n向下匹配

N向上匹配

&#xff08;3&#xff09;vim命令模式下字符的管理

** 字符的复制

yl         复制一个字母

y3l       复制3个字母

yw       复制一个单词

yy        复制一行

y3y      复制3行

p          复制完成后按“P”粘贴

实验前文本文件&#xff1a;

经过上述指令后的文本文件结果为&#xff1a;

** 字符的删除

dl        删除一个字母

d3l      删除3个字母

dw      删除一个单词

d3w    删除3个单词

dd       删除一行

d3d     删除3行

实验前文本&#xff1a;

经过上述删除指令后的文件&#xff1a;

** 字符的剪切

cl        剪切一个字母

c3l      剪切3个字母

cw      剪切一个单词

c3w    剪切3个单词

cc       剪切一行

c3c     剪切3行

Esc ---> p剪切过后会进入到插入模式&#xff0c;在执行粘贴动作时一定要退出插入模式

剪切指令与复制删除类似&#xff0c;不再赘截图

&#xff08;4&#xff09;vim的可视化模式

在命令模式下按“ctrl&#43;v”进入到可视模式

在可视模式下可以区域选择字符

可视模式下批量添加字符

*>> Ctrl&#43;v 选中要加入字符所在列

*>> 按“Shift &#43;I”进入插入模式&#xff0c;写入要加字符

*>> 按Esc

 

&#xff08;5&#xff09;批量修改字符

:%s/原有字符/替换后字符  只替换每一行中出现的第一个原有字符

:%s/原有字符/替换后字符/g  替换所有

:1,5s/原有字符/替换后字符/g  替换1-5行

&#xff08;6&#xff09;vim的分屏功能

ctrl&#43;w s 上下分屏

ctrl&#43;w v 左右分屏

ctrl&#43;w c 关闭光标所在屏幕

ctrl&#43;w       上下左右 光标移动到指定屏幕

:sp file2    同时编辑当前文件和file2

vimdiff      对比两个文件的不同

&#xff08;7&#xff09;vim光标移动

**在命令模式下

:数字   移动到指定的行

G        文件最后一行

gg       文件第一行

i          光标所在位置插入

I          光标所在行行首

a         光标所在字符的下一个位置

A         光标所在行行尾

o         光标所在行下一行

O        光标所在行上一行

s         删除光标所在字符插入

S        删除光标所在行插入

&#xff08;8&#xff09;vim的退出模式

:q        当用vim打开文件但没有对字符作任何操作时可直接退出

:q!       当用vim打开文件并对字符作操作&#xff0c;放弃所有操作退出

:wq      保存退出

:wq!     强行保存退出&#xff0c;对超级用户及文件所有人生效

&#xff08;9&#xff09;vim手册

vimtutor     打开vim的手册

:q               退出vimtutor

 


推荐阅读
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • Ubuntu安装常用软件详细步骤
    目录1.GoogleChrome浏览器2.搜狗拼音输入法3.Pycharm4.Clion5.其他软件1.GoogleChrome浏览器通过直接下载安装GoogleChro ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • 本文介绍了在CentOS 6.4系统中更新源地址的方法,包括备份现有源文件、下载163源、修改文件名、更新列表和系统,并提供了相应的命令。 ... [详细]
  • 本文介绍了5个基本Linux命令行工具的现代化替代品,包括du、top和ncdu。这些替代品在功能上进行了改进,提高了可用性,并且适用于现代化系统。其中,ncdu是du的替代品,它提供了与du类似的结果,但在一个基于curses的交互式界面中,重点关注占用磁盘空间较多的目录。 ... [详细]
  • (九)Docker常用安装
    一、总体步骤1、搜索镜像2、拉取镜像3、查看镜像4、启动镜像5、停止镜像6、移除镜像二、安装tomcat1、dockerhub上面查找tomcat镜像 dockersearchto ... [详细]
  • 进入配置文件目录:[rootlinuxidcresin-4.0.]#cdusrlocalresinconf查看都有哪些配置文件:[rootlinuxid ... [详细]
  • 安装mysqlclient失败解决办法
    本文介绍了在MAC系统中,使用django使用mysql数据库报错的解决办法。通过源码安装mysqlclient或将mysql_config添加到系统环境变量中,可以解决安装mysqlclient失败的问题。同时,还介绍了查看mysql安装路径和使配置文件生效的方法。 ... [详细]
  • d3dx9_26.dll极品飞车9修复工具下载及修复教程
    本文介绍了d3dx9_26.dll文件的修复工具下载和修复教程,解释了该dll文件的作用和安装方法,同时提供了其他dll文件下载安装的方法。文章涵盖了3d、windows、p2p、dll、visual studio等知识点,并由未来可期1212投稿。希望该技术和经验能帮到你解决dll文件相关技术问题。 ... [详细]
  • 本文介绍了如何使用python从列表中删除所有的零,并将结果以列表形式输出,同时提供了示例格式。 ... [详细]
author-avatar
残伤贱爱
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有