一.管理输入输出
在Linux中用普通用户登入,执行
find /etc -name passwd
由于权限会有报错,有正确输出,有错误输出
1.定向输出
重定向正确输出
find /etc -name passwd > file
find /etc -name passwd 1> file
重定向错误输出
find /etc -name passwd 2> file
重定向所有输出
find /etc -name passwd &> file
> 会覆盖原文件内容
2.追加输出
#追加正确输出
find /etc -name passwd >> file
#追加错误输出
find /etc -name passwd 2>> file
#追加所有输出
find /etc -name passwd &>> file
>> 不会覆盖原文件内容,而是直接追加在后面
3.管道
| 管道,前一个命令的输出 是第二个命令的输入,只有正确的可以通过
cat /etc/passwd | wc -l
4.错误转化成正确
用2>&1可以把错误的输出变成正确的,可以把错误的输出编号由2变成1
find /etc -name passwd 2>&1 | wc -l
tip:
屏幕输出与写入文件同时进行的
tee:复制输出到指定位置
date |tee file | wc -l
tee命令复制data命令的输出到file中,并统计行数
二.vim
1.在vim中命令模式下可以配置vim的工作方式
:set nu ##添加行号
:set nonu ##取消行号
:set mouse=a ##添加鼠标可选中
:set cursorline ##添加下划线行线
但是以上方式设定的都是临时的,要想永久设定,必须修改 /etc/vimrc这个配置文件
vim /etc/vimrc
此文件为vim的配置文件,在此配置文件最后加入以上参数,则变成永久设定
2.vim命令模式下关键字的匹配
:/关键字 (匹配的关键字会高亮显示)
n:向下匹配
N:向上匹配
3.vim光标的移动
在命令模式下
:数字(行号) ##移动到指定的行
:G ##文件的最后一行
:gg ##文件的第一行
4.vim命令模式下字符的管理
1.字符的复制 (在命令模式下,不用按I进入insert)
p ##粘贴(复制完成后,按p粘贴所复制的内容)
u ##撤销
yy ##复制一行内容
y3y ##复制三行内容
yl ##复制一个字母
y3l ##制三个字母
yw ##复制一个单词(以空格来区分一个单词)
y3y ##复制三个单词
2.字符的删除
dd ##删除一行
d2d ##删除两行
dl ##删除一个字母 d2l
dw ##删除一个单词 d2w
3.字符的剪切
执行剪切操作后会进入insert模式,需先按esc再按退出insert,再按p
cc ##剪切一行 c3c
cl ##剪切一个字母 c3l
cw ##剪切一个单词 c3w
5.批量修改字符(命令模式下)
:%s/原有字符/替换后的字符 ##这样只替换每一行中出现的第一个原有单词)
:%s/原有字符/替换后的字符/g ##替换每一行所有
:1,5s/原有字符/替换后的字符/g ##替换1-5行原有单词
6.vim手册
vimtutor
:q ##退出vimtutor
7.vim的可视化
在命令格式下按ctrl+v进入可视模式 visual block,在可视模式下可以区域选择字符
1)在可视模式下批量添加字符
按ctrl+V选中要加入字符所在的列(前提是要设置set mouse=a选中)
再按I 进入插入模式,写入要加入的字符
再按esc两次
2)在可视模式下批量删除字符
按ctrl+v选中要删除字符所在的列再按del
8.vim分屏功能
ctrl+w 松手按s 上下分屏
ctrl+w 松手按v 左右分屏
ctrl+w 松手按c 关闭光标所在的分屏
:sp newfilename #同时编辑当前文件和新打开的文件
9.vim进入插入模式的不同命令
i ##在光标所在位置进入插入模式
I ##在光标所在行的行首进入插入模式
a ##在光标所在位置的下一个位置进入插入模式
A ##在光标所在行的行尾进入插入模式
o ##在光标所在行的下一行位置进入插入模式
O ##在光标所在行的上一行位置进入插入模式
s ##删除光标所在字符并进入插入模式
S ##删除光标所在行并进入插入模式
10.vim退出方式
:q ##不保存退出
:wq ##退出并保存
:q! ##强行退出不保存
:wq! ##强行退出并保存
root密码忘记
1.重新启动系统
2.在系统启动阶段按上下键停止系统引导
3.选择启动引导标题,按“E”进行编辑
4.找到linux16引导条目这一行,从这行最后删除到ro选项,ro改成rw,然后添加rd.break选项
5.ctrl+x启动设定过后的系统引导条目
6.进入系统后执行chroot /sysroot切换到真实的系统环境
7.passwd root 修改超级用户密码
8.建立文件/.autorelabel让系统重新扫描所有文件
9.exit两次使系统重新启动*
练习1:
一、在student用户下执行find /etc -name passwd命令,并管理其输出,要求如下:
1.显示所有正确输出,屏蔽错误输出
2.保存正确输出到find.out文件,错误输出到find.err
3.建立find.all文件,并保存所有输出到此文件
4.屏蔽此命令所有输出
5.显示此命令所有输出并保存到桌面任意文件
6.保存正确输出到find.out.1,屏蔽错误输出
1.find /etc -name passwd 2> /dev/null # /dev/null相当于垃圾箱
将find命令中的错误输出‘2’定向输出到null文件中,显示就只有正确的输出
2.find /etc -name passwd 2>find.err | tee find.out
将错误输出定向到find.err中,通过管道把正确的放入find.out
| 管道,前一个命令的输出 是第二个命令的输入,只有正确的可以通过
tee:复制输出到指定位置
3.find /etc -name passwd &>find.all
4.find /etc -name passwd &> /dev/null
5.find /etc -name passwd 2>&1 | tee find.all
6.find /etc -name passwd 2> /dev/null | tee find.out.1
二、处理文件在/usr/share/mime/packages/freedesktop.org.xml要求如下:
1.找到文件中包含ich的行,并保存到/root/lines中
2.用vim替换/root/lines中的空格,保留原内容
1.grep命令是linux系统的一种文本查找命令
grep ich /usr/share/mime/packages/freedesktop.org.xml>/root/lines
cat /root/lines
2.vim /root/lines
在vim命令模式输入
:%s/ //g
可以将所有的空格去掉