管理输入输出及vim命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了管理输入输出及vim命令相关的知识,希望对你有一定的参考价值。

一.管理输入输出

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

在系统中用普通用户执行 "student"

find /etc -name passwd 

技术分享

因为student用户权限问题会有以下输出

find: ‘/etc/pki/CA/private’: Permission denied##没有进入权力,报错

find: ‘/etc/pki/rsyslog’: Permission denied

find: ‘/etc/audit’: Permission denied

/etc/passwd##正确输出

find: ‘/etc/polkit-1/rules.d’: Permission denied

find: ‘/etc/polkit-1/localauthority’: Permission denied

find: ‘/etc/dhcp’: Permission denied

find: ‘/etc/selinux/targeted/modules/active’: Permission denied

find: ‘/etc/lvm/archive’: Permission denied

find: ‘/etc/lvm/backup’: Permission denied

find: ‘/etc/lvm/cache’: Permission denied

find: ‘/etc/grub.d’: Permission denied

/etc/pam.d/passwd##正确输出

find: ‘/etc/audisp’: Permission denied

find: ‘/etc/firewalld’: Permission denied

find: ‘/etc/cups/ssl’: Permission denied

find: ‘/etc/ipsec.d’: Permission denied

find: ‘/etc/libvirt’: Permission denied

find: ‘/etc/sudoers.d’: Permission denied

find: ‘/etc/named’: Permission denied

技术分享

重定向正确输出:find /etc -name passwd > file

技术分享

将输出保存在file中

技术分享

重定向错误输出:find /etc -name passwd > file.error技术分享

将错误输出保存在file.error

技术分享

重定向全部输出:find /etc -name passwd &> file

技术分享

编辑file

技术分享

技术分享

注意:>,2>,&>会覆盖源文件内容

技术分享

技术分享

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

技术分享

技术分享

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

技术分享

技术分享

追加全部输出 find /etc -name passwd &>> file技术分享

技术分享

技术分享

注意>> 2>> &>> 不会覆盖源文件内容,会把相应的输出字符方到文件的最后

技术分享

技术分享

echo会覆盖源文件内容

技术分享

追加输入

技术分享

| 管道,管道的作用是将前一条命令的输出变成管道后命令的输入 

ls /bin | wc -l    统计ls /bin 命令输出的行数

技术分享

技术分享

系统中错误的输出是无法通过管道的。

date |tee file |wc -l    tee命令复制date命令的输出到file中,并统计输出行数 

技术分享

2>&1 可以把错误的输出编号由2变成1

tee复制输出到指定位置

技术分享

技术分享

技术分享

格式化输入内容到文件

技术分享

输入重定向


技术分享

二.vim

1.vim 命令模式

在vim异常退出

vim一场退出时,系统中会在所编辑的文件目录中生成.file.swp

vim再次编辑此文件时会出现相应提示

"o"open

"e"edit

"r"recover

"d"delete .swap file

"q"quit

 技术分享v

vim的命令模式下可以配置vim的工作方式

行号添加:set nu

技术分享

取消行号:set nonu

技术分享

添加鼠标选择:set mouse=a

技术分享

行线显示:set curorline

注意:以上设定都是临时的,

永久设定方式:

vim /etc/vimrc  此文件为vim的配置文件,在此文件最后加入以上参数,加到文件中的参数不需要:

注意:当文件内容更改信息不确定正确与否的时候,应该先备份要更改的文件!!!


技术分享

技术分享

技术分享

2.vim命令模式下关键字搜索

技术分享

/关键字

n向下匹配

N向上匹配

3.vim命令模式下字符的管理

(1)字符的复制



技术分享

技术分享

y1     一个字母的复制

技术分享

y3l    三个字母的复制

技术分享

yw    一个单词的复制

技术分享

y3w   三个单词的复制

技术分享

yy     复制一行

技术分享

y3y   复制三行

注意:复制完成后按“p”粘贴

2.字符的删除

dl   删除一个字母

技术分享

d3l  删除三个字母

技术分享

dw  删除一个单词

技术分享

d3w  删除三个单词

技术分享

dd  删除一行

技术分享

d3d  删除三行

技术分享

3.字符的剪切

cl  剪切一个字母

技术分享

c3l  剪切三个字母

技术分享

cw   剪切一个单词

技术分享

c3w  剪切三个单词

技术分享

技术分享

技术分享

技术分享

cc  剪切一行

技术分享

c3c  剪切三行

技术分享

技术分享

技术分享


技术分享

技术分享

技术分享

esc ---> p    剪切过后会进入到插入模式,在执行粘贴动作时一定要退出插入模式

4.vim的可视化模式 

在命令模式下按“ctrl+v”进入到可视模式

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

可视模式下批量添加字符

*>> ctrl+v 选中要加入字符所在列

*>> 按“I”进入插入模式,写入要加字符

*>> 按esc

技术分享

5.批量修改字符 

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

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

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

技术分享


技术分享


技术分享

6.vim的分屏功能

ctrl+w s    上下分屏

ctrl+w v    左右分屏

ctrl+w c    关闭光标所在屏幕

ctrl+w 上下左右   光标移动到指定屏幕

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

vimdiff    对比两个文件的不同 

技术分享

技术分享

技术分享

技术分享


7.vim光标移动

在命令模式下

:数字     移动到指定的行

G       文件最后一行

gg      文件第一行 

在插入模式下

i  光标所在位置插入

I  光标所在行行首

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

A  光标所在行行尾

o  光标所在行下一行

O  光标所在行上一行

s  删除光标所在字符插入

S  删除光标所在行插入

技术分享

技术分享

技术分享

技术分享

技术分享


技术分享


技术分享

技术分享

技术分享

技术分享

8.vim的退出模式

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

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

:wq 保存退出

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


9.vim手册

vimtutor   vim的手册

:q        退出vimtutor

10.gedit 

ctrl+n   在gedit中打开一个新的tab

ctrl+s    保存文件

ctrl+o    打开文件

ctrl+x    剪切字符

ctrl+v    粘贴字符

ctrl+c    复制字符

yelp help:gedit  gedit的图形手册

技术分享





 










 




以上是关于管理输入输出及vim命令的主要内容,如果未能解决你的问题,请参考以下文章

运维学习之管理输入输出及vim编辑模式

linux系统输入输出管理和vim的常用功能

Linux输入输出以及vim命令总结

三四单元(MAN     vim     管理输入输出)

Linux(RadHat)基础学习—vim编辑器及文件的输入输出

linux云自动化运维基础知识4(系统结构,vim,管理输入输出,正则表达式)