管理输入输出及vim命令

简介:

一.管理输入输出

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

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

find /etc -name passwd 

wKioL1na-z6BRakcAAG4dtwsAz4481.png-wh_50

因为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

wKiom1na_BaS2si3AAIc3P7ejhw251.png-wh_50

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

wKioL1na_CTRUBZeAABW4063NX4329.png-wh_50

将输出保存在file中

wKioL1na_IjCoaIMAAA-oX6in-k918.png-wh_50

重定向错误输出:find /etc -name passwd > file.errorwKiom1nbAUDAhdKlAAGbzHPROdg577.png-wh_50

将错误输出保存在file.error

wKioL1nbAXfSbg-IAABLIWGr-M8345.png-wh_50

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

wKioL1nbAeWgBlcJAABPuG5agOI934.png-wh_50

编辑file

wKioL1nbAgewk-rcAAIW13HgDZU020.png-wh_50

wKiom1nbAlmhWkwvAABnqYFaH0A010.png-wh_50

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

wKiom1nbBFrTHd8VAAF6aJnDRcw619.png-wh_50

wKioL1nbBA2ztCCAAABoz_0mkSI743.png-wh_50

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

wKioL1nbBKDSEdDMAAA_7Zv7qZc929.png-wh_50

wKiom1nbBPLxA_6EAAGleZ7OfEM554.png-wh_50

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

wKioL1nbBRaSxErNAAAsEzO7nPQ671.png-wh_50

wKiom1nbBWiRjONqAAG3OBVsG18144.png-wh_50

追加全部输出 find /etc -name passwd &>> filewKiom1nbBgjSLNJ4AABOHczW0JI906.png-wh_50

wKiom1nbBgnCmFThAAF48yC5jio315.png-wh_50

wKioL1nbBbnjdGEzAAA8MT3O_Ug676.png-wh_50

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

wKioL1nbBhnixGzVAAHALnUEky4227.png-wh_50

wKiom1nbBmri8NH1AAA_rXls37k422.png-wh_50

echo会覆盖源文件内容

wKioL1nbBhrT1RnDAACTH1gnGJg930.png-wh_50

追加输入

wKioL1nbBhuiCuonAABA6fjB06M959.png-wh_50

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

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

wKiom1nbB57Byyp_AAApqCxHoOY419.png-wh_50

wKioL1nbB06zFM-jAABD41EmuJc369.png-wh_50

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

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

wKiom1nbCBuxonY3AAArwtPqQK0918.png-wh_50

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

tee复制输出到指定位置

wKiom1nbCBvDiP9AAAA09f-lrWQ334.png-wh_50

wKioL1nbB8rQ0vq8AAAeslyFrs0892.png-wh_50

wKiom1nbCBzRsQU4AAAzwoT4gn8631.png-wh_50

格式化输入内容到文件

wKioL1nbB8vCWC8LAAA86MFz4gg277.png-wh_50

输入重定向


wKioL1nbCQaR9jujAAA8MT3O_Ug843.png-wh_50

二.vim

1.vim 命令模式

在vim异常退出

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

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

 "o"open

 "e"edit

 "r"recover

 "d"delete .swap file

 "q"quit

 wKioL1nbhmCRlzg6AABJXu1wsAs309.png-wh_50v

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

行号添加:set nu

wKiom1nbhxHCuPs2AABPWG8M0VM018.png-wh_50

取消行号:set nonu

wKioL1nbhsHD6ZIWAABLi0_p9Wg710.png-wh_50

添加鼠标选择:set mouse=a

wKioL1nbhsTD4lv9AABOSOyODwQ657.png-wh_50

行线显示:set curorline

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

永久设定方式:

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

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


wKiom1nbiFaglbQTAAAYk2zAPiA658.png-wh_50

wKioL1nbiAaDloRyAADmPkBb5o4740.png-wh_50

wKiom1nbiFiBcVuWAAAldXhuaSs526.png-wh_50

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

wKiom1nbinmDTn9qAABYy_uc29k912.png-wh_50

/关键字

n向下匹配

N向上匹配

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

(1)字符的复制



wKioL1nbiifSmm9MAABUANTK0n8246.png-wh_50

wKioL1nbiiiQjg5PAABSwKEq7dw495.png-wh_50

y1     一个字母的复制

wKiom1nbinmQeOTTAABUMNr6qWQ033.png-wh_50

y3l    三个字母的复制

wKioL1nbi5yQMzwKAABREGyiHS8226.png-wh_50

yw    一个单词的复制

wKioL1nbi5ywSom9AABZfD6wwWQ530.png-wh_50

y3w   三个单词的复制

wKiom1nbi-6xwX4lAABX1MJc1ss241.png-wh_50

yy     复制一行

wKiom1nbi-6xA1MLAABhfugJ710308.png-wh_50

y3y   复制三行

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

2.字符的删除

dl   删除一个字母

wKioL1nbi53gjlesAABbsZbrS_k543.png-wh_50

d3l  删除三个字母

wKiom1nbi-_j7HX-AABeIayZv7M959.png-wh_50

dw  删除一个单词

wKioL1nbjcDDQKw_AABbt6PrHxw388.png-wh_50

d3w  删除三个单词

wKioL1nbjcHDft6yAABWHW3TrB0031.png-wh_50

dd  删除一行

wKiom1nbjhLj3mnBAABRUFNzh_c310.png-wh_50

d3d  删除三行

wKiom1nbjhOgK7pcAAA2kmLwdu8001.png-wh_50

3.字符的剪切

cl  剪切一个字母

wKioL1nbjcHCx9pDAABK2iCcO4I994.png-wh_50

c3l  剪切三个字母

wKioL1nbjcLSbGUAAABHVUHWYUI423.png-wh_50

cw   剪切一个单词

wKiom1nbjhPzMe6-AABIH7TAd6k640.png-wh_50

c3w  剪切三个单词

wKiom1nbkF_xQqXPAABIpDZQZcc803.png-wh_50

wKioL1nbkA6AeodwAABcrKX9P00867.png-wh_50

wKiom1nbkGDAbXG9AABXLITLHJg663.png-wh_50

wKiom1nbjhPD0OlrAAA5QZwSVdA466.png-wh_50

cc  剪切一行

wKioL1nbjcKT0PWmAAA5vc1NRyw505.png-wh_50

c3c  剪切三行

wKioL1nbjcKxIAZBAABLnJO0oAI481.png-wh_50

wKiom1nbjhTzgRYqAAA5NYAW2-4791.png-wh_50

wKioL1nbjcLz8EoUAABIRSX1wDk737.png-wh_50


wKioL1nbkF2SKHWfAABIpDZQZcc490.png-wh_50

wKiom1nbkK_yVRyuAABcrKX9P00023.png-wh_50

wKioL1nbkF7QRv4-AABXLITLHJg432.png-wh_50

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

4.vim的可视化模式 

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

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

可视模式下批量添加字符

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

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

*>> 按esc

wKiom1nbkUCScwf7AAB9HrWSGqo904.png-wh_50

5.批量修改字符 

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

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

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

wKioL1nbkO-SySEYAACOzfr4jvA461.png-wh_50


wKiom1nbkUKS-kqTAACthe0hl2M539.png-wh_50


wKioL1nbkPGhg8fRAACRaOkd_QI042.png-wh_50

6.vim的分屏功能

ctrl+w s    上下分屏

ctrl+w v    左右分屏

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

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

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

vimdiff    对比两个文件的不同 

wKioL1nbkPKB5z7oAACKhrCa4yM636.png-wh_50

wKioL1nbkmezgUTcAAD1JqZyfug397.png-wh_50

wKioL1nbkmfiznwZAABYYqbUCOo937.png-wh_50

wKiom1nbkriA_kDbAAAauWbUlFE870.png-wh_50


7.vim光标移动

在命令模式下

:数字     移动到指定的行

G       文件最后一行

gg      文件第一行 

在插入模式下

i  光标所在位置插入

I  光标所在行行首

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

A  光标所在行行尾

o  光标所在行下一行

O  光标所在行上一行

s  删除光标所在字符插入

S  删除光标所在行插入

wKiom1nbkrngxvriAAByf6T0Cxo018.png-wh_50

wKioL1nbkmfgv_2PAAB0y5YJ9aw581.png-wh_50

wKiom1nbkrmhqtN9AABsUd7m9xk237.png-wh_50

wKioL1nbkmigCHQsAABzgPh1vUI259.png-wh_50

wKiom1nbkrry9VcQAABvJm_Hi6Y939.png-wh_50


wKioL1nbk-mTebAiAABvoPh9Ll4358.png-wh_50


wKiom1nblDuStuStAABxPBRu4-U157.png-wh_50

wKioL1nbk-rx6gJuAABwILn2GXM063.png-wh_50

wKiom1nblDyTM8W4AABYdQogiI8113.png-wh_50

wKioL1nbk-uhJhMGAABq2bDTrRs823.png-wh_50

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的图形手册

wKiom1nblD2xcPsEAAATrOZs8Q0464.png-wh_50





 




















本文转自Uniqueh51CTO博客,原文链接:http://blog.51cto.com/13363488/1971329,如需转载请自行联系原作者






相关文章
|
7月前
|
机器学习/深度学习 开发工具
Vim的常用命令 基本使用
Vim的常用命令 基本使用
55 0
|
7月前
|
Linux 编译器 开发工具
Linux:详解(yum的使用、vim编辑器命令集合以及gcc/g++编译器的使用)
Linux:详解(yum的使用、vim编辑器命令集合以及gcc/g++编译器的使用)
197 1
|
7月前
|
NoSQL Linux 编译器
Linux:vim调试工具gdb | 常见命令集
Linux:vim调试工具gdb | 常见命令集
169 0
|
7月前
|
开发工具
Vim 模式切换 | 命令集
Vim 模式切换 | 命令集
135 0
|
4月前
|
Unix Linux 开发工具
在Linux中,有哪些基本的 Vim 命令?
在Linux中,有哪些基本的 Vim 命令?
|
2月前
|
Unix Linux 开发工具
Linux Vim的 命令大全
Linux Vim的 命令大全
32 0
|
3月前
|
存储 Linux Shell
常用vim命令和vim基本使用及Linux用户的管理,用户和组相关文件
这篇文章介绍了Vim编辑器的基本使用、常用命令和模式,以及Linux系统中用户和组的管理方法,包括用户和组相关文件如/etc/passwd、/etc/shadow和/etc/group的说明。
常用vim命令和vim基本使用及Linux用户的管理,用户和组相关文件
|
3月前
|
存储 Linux 编译器
linux中vim介绍以及常用命令大全
linux中vim介绍以及常用命令大全
91 8
|
4月前
|
开发工具
vim编辑器常用命令
vim编辑器常用命令
94 1
|
5月前
|
JSON Java Linux
linux 命令使用总结:vim,nohup,find,df,du,sudo,netstat,ll,curl,lastlog
linux 命令使用总结:vim,nohup,find,df,du,sudo,netstat,ll,curl,lastlog
76 5