第九天预习笔记
一、Vim/vi纯文本编辑器
1、vi是Linux命令行界面下的重要文件编辑器,vim是vi的加强版,列如高亮显示代码
自动缩进等
语法:vim选项文件
[root@oldboyedu ~]# vim aa.txt
2、vim分为三种模式
普通模式、编辑模式、命令模式
普通模式
用vim打开一个文件后,当前状态就是普通模式,在这个模式不能编辑,但可以按“i
o,O,a,A”其中“i”最普遍,也可以进行一些如删除、复制、粘贴
编辑模式
当在普通模式进入编辑模式按“i”后,再界面的下面会显示insert图标,这就是编辑模式
命令模式
在普通模式下,输入“:”或“/”“?”时,光标会自动定位在那一行,
在这个模式下可以执行保存、退出,搜索、替换等动作
3、针对该命令的参数选项说明
1)普通模式:移动光标
G或shift将光标移动到文件的最后一行
gg将光标移动到文件的第一行
数字0将光标从当前位置移动到当前行的行首
$从光标所在的位置将光标移动到当前行的行尾
ngg n为数字,移动到文件的第n行
2)普通模式:搜索与替换
/oldboy从光标位置开始,向下寻找名为oldboy的字符串
?oldboy从光标位置开始,向下寻找名为oldboy的字符串
n从光标位置开始,向下重复前一个搜索的动作
N从光标位置开始,向上重复前一个搜索的动作
:%s/A/B/g把符合A的全部替换成B,斜线为分隔符,可以用#@等替换
:n1,n2s/A/B/gc n1,n2是数字,在第n1行到第n2行间寻找A,并替换成B
2)普通模式:复制、粘贴、删除等
yy复制光标所在的行
nyy n为数字,复制光标开始向下共n行
p/P p将已复制的数据粘贴到光标的下一行,P则为粘贴到上一行
dd删除光标所在的行
ndd删除从光标开始向下共n行
u撤销前一个动作
.点号,重复前一个动作
3)进入编辑模式
i在当前光标所在处插入文件
o在当前所在行的下一行插入新的一行
4)命令模式
:wq保存退出
:q退出,不保存
:set nu显示行号
:set nonu取消显示行号
二、echo显示输出文本内容
将指定文本显示在Linux命令行上或者通过重定向符写入到指定文件中
语法:echo选项文本
选项:-n不要自动换行
-e转移字符\t tab键插入tab键;\n换行光标移动到行首
例子:
[root@oldboyedu ~]# echo "hello world"
hello world
[root@oldboyedu ~]# echo -e "hello\ world"
hello\ world
[root@oldboyedu ~]# echo -e "hello\t world"
hello world
[root@oldboyedu ~]# echo -e "hello\n world"
hello
world
三、cat合并文件或者查看文件内容
语法:cat选项文件
选项:-n从1开始对所有输出的内容按行编号
-b和-n相似,但忽略显示空白行号
例子
[root@oldboyedu ~]# cat -n a.txt
1
2 i am a teache
3 hello
4 world
[root@oldboyedu ~]# cat -b a.txt
1 i am a teache
2 hello
3 world
cat重定向输入创建文件
[root@oldboyedu ~]# cat > b.txt <<EOF
I AM A TEACHER
i am a study
58期
EOF
[root@oldboyedu ~]# cat b.txt
I AM A TEACHER
i am a study
58期
四、more分页显示文件内容
语法:more选项文件
[root@oldboyedu ~]# more -5 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
--More--(20%)
五、Less分页显示内容
语法:less选项文件
[root@oldboyedu ~]# less a.txt
i am a teache
hello
world
(END)
六、head显示文件内容头部,默认显示文件头部的10行
语法:head选项文件
选项:-n指定显示的行数;-c指定显示字节数
例子:
[root@oldboyedu ~]# head /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
[root@oldboyedu ~]# head -n /etc/passwd
head: /etc/passwd: invalid number of lines
[root@oldboyedu ~]# head -4 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologi
七、tail显示文件内容尾部,默认显示最后10行
语法:tail选项文件
选项:-n指定显示的行数;-c指定显示的字节数;-f实时输出文件变化后追加的数据
例子
[root@oldboyedu ~]# tail -f /var/log/messages
Mar 13 18:40:37 oldboyedu nm-dispatcher: req:3 'up' [eth0]: new request (2 scripts)
Mar 13 18:40:37 oldboyedu nm-dispatcher: req:4 'connectivity-change': new request (2 scripts)
[root@oldboyedu ~]# tail -3 /etc/passwd
oldboy:x:1000:1000:oldboy:/home/oldboy:/bin/bash
oldgirl:x:1001:1001::/home/oldgirl:/bin/bash
test:x:1002:1002::/home/test:/bin/bash
八、grep文本过滤工具
其功能是从文本文件或管道数据流中筛选匹配的行或数据
语法:grep选项参数匹配模式查找文件
选项参数:-v显示不匹配的行;-i不区分大小写;-n显示行号
-E相当于egrep扩展;-w只匹配过滤的单词;-o只输出匹配的内容
[root@oldboyedu ~]# cat b.txt
I AM A TEACHER
i am a study
58期
[root@oldboyedu ~]# grep "I" b.txt
I AM A TEACHER
[root@oldboyedu ~]# grep "i" b.txt
i am a study
[root@oldboyedu ~]# grep "i" b.txt a.txt
b.txt:i am a study
a.txt:i am a teache
[root@oldboyedu ~]# grep "i" b.txt
i am a study
[root@oldboyedu ~]# grep "I" b.txt
I AM A TEACHER
[root@oldboyedu ~]# grep -i "a" b.txt
I AM A TEACHER
i am a study
[root@oldboyedu ~]# grep -v "a" b.txt
I AM A TEACHER
58期
[root@oldboyedu ~]# grep -n "a" b.txt
2:i am a study
[root@oldboyedu ~]# grep -w "a" b.txt
i am a study
[root@oldboyedu ~]# grep -o "a" b.txt
a
a
[root@oldboyedu ~]# grep -o "A" b.txt
A
A
A
[root@oldboyedu ~]# grep -o "Am" b.txt
[root@oldboyedu ~]# grep -o -i "Am" b.txt
AM
am
[root@oldboyedu ~]# grep -o "Am" b.txt
[root@oldboyedu ~]# egrep -o "Am" b.txt
[root@oldboyedu ~]# egrep -o "A|m" b.txt
A
A
A
M
tr替换或删除
从标准输入中替换、缩减、或者删除字符,并将结果写到标准输出
语法:tr选项字符1字符2
选项:-d删除字符
例子
[root@oldboyedu ~]# cat a.txt
i am a teache
hello
world
[root@oldboyedu ~]# tr 'a' 'A ' < a.txt
i Am A teAche
hello
world
[root@oldboyedu ~]# tr 'a' 'A ' < a.txt >>a.txt
[root@oldboyedu ~]# cat a.txt
i am a teache
hello
world
i Am A teAche
hello
world
7.10.4重定向符号的核心知识
1.标准输入、输出、错误输出
2标准输入是一个名词,它表示数据的一个流向方向,通常表示数据从文件等流入
到处理的工具或者命令中,用代码0表示,使用<或者<<符号来指示数据朝箭头所指的
方向流向
标准输出是一个名词,也表示一个数据的流向方向,使用>或>>来表示数据朝向方向
和标准输入不同,1表示将命令等处理的一般信息输出到文件
标准错误输出是另一个名词,也是表示数据的一个流向方向,通常用2表示,使用
>或>>符号啦指示数据朝向
3、标准输出实际范例
[root@oldboyedu ~]# echo ssss >c.txt
[root@oldboyedu ~]# cat c.txt
ssss
标准错误输出
[root@oldboyedu ~]# ch fsdfsdf >>c.txt
-bash: ch: command not found
[root@oldboyedu ~]# ch fsdfsdf 2>>c.txt
[root@oldboyedu ~]# cat c.txt
ssss
-bash: ch: command not found
标准输入
[root@oldboyedu ~]# xargs -n 3 <b.txt
I AM A
TEACHER i am
a study 58期
[root@oldboyedu ~]# xargs -n 4 <b.txt
I AM A TEACHER
i am a study
58期
[root@oldboyedu ~]# xargs -n 9 <b.txt
I AM A TEACHER i am a study 58期
考试题:已知文件test.txt内容如下
test
liyao
oldboy
请给出在屏幕输出test.txt内容时,不包括oldboy字符串的命令
第一种方法
[root@oldboyedu ~]# grep -v "oldboy" test.txt
test
liyao
第二种
[root@oldboyedu ~]# head -2 test.txt
test
liyao
---------------------------------------------------------
第十天预习笔记
第七章、查看命令的使用及软硬连接
1、使用echo输出
[root@oldboyedu /data]# echo "i am studying centos
i am studying linux
2、特殊符号重定向符号>的说明
>为重定向符号,表示清除原文件里面的所有内容,然后把内容写到文件的尾部
>>为追加重定向,即追加内容到文件的尾部(文件的最后一行)
3、cat
在多行追加文本内容时,也可以利用cat加追加重定向符号实现和echo相同的功能
4、重定向符号的核心知识
1)重定向简介:重定向是Linux的一个重要的名词,使用重定向符号,可以让数据从一个
地方(文件或工具)无损失地流到另一个地方(文件或工具)
2)标准输入、输出、错误输出
3)标准输出实际范例
[root@oldboyedu /data]# echo "12334" >oldboy.txt
[root@oldboyedu /data]# cat oldboy.txt
12334
4)错误输出案例
[root@oldboyedu ~]# ech 232 1>>a.txt 2>b.txt
[root@oldboyedu ~]# cat a
aa.txt a.txt
[root@oldboyedu ~]# cat a.txt
[root@oldboyedu ~]# cat b.txt
-bash: ech: command not found
[root@oldboyedu ~]#
5)输入重定向的实例
[root@oldboyedu ~]# echo 1 2 3 >oldboy.txt
[root@oldboyedu ~]# cat oldboy.txt
1 2 3
6、软连接及硬链接
ln -s test test/ 报错
ln -s test-1 test 这是软链接,正确的
软连接 特点
1、软连接相当文件的不同入口(快捷方式)
2、软连接依附于文件实体存在,不可独立存在(原文件删除,软连接失效)
3、软连接不可移动
ln test test1
硬链接特点:1、相当于原文件的备份或克隆,与原文件索引节点相同
2、硬链接可以独立存在,可以用硬链接找回原文件,改名
3、硬链接可移动
4、硬链接只能对文件做链接,不可对目录做链接