第四单元
1. 输入输出管理
在linux中有标准的输入和输出,但是有时候可以通过设置来改变输入输出的位置,我们称之为输入输出重定向
例如要统计某个文件的字数,标准是输入到屏幕上显示,我们可以将输出重定向到一个文件中,我们通过查看这个文件就可以看到这个文件字数的统计结果
在linux系统中,正确输出的编号为1,错误输出编号为2
例:超级用户root可以查找/etc目录下关于passwd的内容,但是普通用户student就因为有权限的限制不能查看,只有两条是可以查看,其他的都因为权限不够不能查看
此时,能查看的就是正确输出,不能查看的就是错误输出,我们可以通过输出重定向将结果重定向到另外一个文件中
用“>”将正确输出重定向到file文件中,用cat file可以查看正确输出
用“2>”将错误输出重定向到file文件中,用cat file可以查看错误输出
用“&>”将全部输出重定向到file文件中,用cat file可以查看全部输出
!!!注意:用>,2>,&>,重定向的时候,之前的输出都会被覆盖
用“>>”将正确输出追加到file文件中,用cat file可以查看正确输出
用“2>>”将错误输出追加到file文件中,用cat file可以查看错误输出
用“&>>”将全部输出追加到file文件中,用cat file可以查看全部输出
!!!注意:使用>>,2>>,&>>,追加不会覆盖源文件内容,会将相应的输出放到文件最后
2.管道符“|”
在linux中,如果命令所需要的输入不是来自键盘输入而是通过指定的文件来完成输入,这就可以用到管道
管道是用 “|”将两个命令分隔开,管道符左边命令的输出作为管道符右边命令的输入,即可完成通过指定文件来完成输入
ls /bin | wc -l 统计ls /bin 命令输出的行数
!!!注意:系统中错误的输出是无法通过管道的
3.vim编辑器
vim 命令模式
在vim异常退出
在vim一场退出时,系统中会在所编辑的文件目录中生成.file.swp
vim再次编辑此文件时会出现相应提示
按 "o" open
按 "e" edit
按 "r" recover
按 "d" delete .swap file
按 "q" quit
在vim的命令模式下可以配置vim的工作方式
:set nu ##行号添加
:set nonu ##取消行号
:set mouse=a 添加鼠标选择
:set cursorline 行线显示
但是用这种方法进行的设置只是临时的,都只是在当前shell生效,想要永久生效,必须修改配置文件
vim /etc/vimrc
此文件为vim的配置文件,在此文件最后加入以上参数,加到文件中的才参数不需要:
4.vim编辑器下的字符管理
字符的复制
yl 复制一个字母
y3l 复制3个字母
yw 复制一个单词
y3w 复制3个单词
yy 复制一行
y3y 复制3行
p 复制完成后按“P”粘贴
初始passwd文件内容
复制之后的passwd文件内容
字符的删除
dl 删除一个字母
d3l 删除3个字母
dw 删除一个单词
d3w 删除3个单词
dd 删除一行
d3d 删除3行
初始passwd文件内容
删除之后passwd文件内容
批量修改字符
:%s/原有字符/替换后字符 ##只替换每一行中出现的第一个原有字符
将x替换成f
:%s/原有字符/替换后字符/g ##替换所有
将x替换成f
vim的分屏功能
ctrl+w s 上下分屏
ctrl+w v 左右分屏
ctrl+w c 关闭光标所在屏幕
ctrl+w 上下左右 光标移动到指定屏幕
7.vim光标移动
在命令模式下
:数字 移动到指定的行
G 文件最后一行
gg 文件第一行
在插入模式下
i 光标所在位置插入
I 光标所在行行首
a 光标所在字符的下一个位置
A 光标所在行行尾
o 光标所在行下一行
O 光标所在行上一行
s 删除光标所在字符插入
S 删除光标所在行插入
vim的退出模式
:q 当用vim打开文件但没有对字符作任何操作时可直接退出
:q! 当用vim打开文件并对字符作操作,放弃所有操作退出
:wq 保存退出
:wq! 强行保存退出,对超级用户及文件所有人生效
vim手册
vimtutor vim的手册
:q 退出vimtutor
5.gedit
ctrl+n 在gedit中打开一个新的tab
ctrl+s 保存文件
ctrl+o 打开文件
ctrl+x 剪切字符
ctrl+v 粘贴字符
ctrl+c 复制字符
yelp help:gedit gedit的图形手册