1.cat的简单使用
使用cat查看文件:新建文件cat_data.txt,在文件中写入: -n 使用cat输出,且带行号 -b 使用cat输出,且非空行带行号
2.more 和less 的简单应用(分页查看文件内容)
命令格式: more | less [选项] 文件名
常用选项:
-数字——仅适用于more命令,用来指定分页显示时每页的行数。
+num——指定从文件的第num行开始显示。
-c——从顶部清屏然后显示文件内容。
-N——仅适用于less命令,其作用是在每行前添加输出行号。
交互操作方法:
按Enter键向下逐行滚动
按空格键向下翻一屏、按b键向上翻一屏
文件末尾时more会自动退出,less 按q键退出
题目: 新建文件more_less.txt,且填充50行内容,且其中包含Linux 使用more命令查看文件 使用enter键逐行去浏览 使用空格键跳页去浏览
进入:more | less more_less.txt 使用/Linux去查找,按n键查找下一个,按b键查找上一个
3.head和tail的简单使用
查看文件开头或末尾的部分内容:
命令格式:head | tail [选项] 文件名
常用选项:
-num——指定需要显示文件多少行的内容,若不指定,默认只显示十行。
-f——使tail不停地去读取和显示文件最新的内容, 以监视文件内容的变化。这样有实时监视的效果。
题目: 使用题2的more_less.txt文件 head:输出前5行内容 head -5 more_less.txt tail:输出后5行内容tail -5 more_less.txt
4.grep和ls的简单使用
检索、过滤文件内容,在指定的文件中查找并显示含有指定字符串的行。
命令格式:grep [参数] 文件名称
参数及作用:
-b 将可执行文件(binary)当作文本文件(text)来搜索
-c 仅显示找到的行数
-i 忽略大小写
-n 显示行号
-v 反向选择——仅列出没有“关键词”的行
题目 新建file1.txt,file2.txt,file3.txt 使用ls命令+通配符查找file1.txt,file2.txt, file3.txt
使用grep命令查找file1.txt, file2.txt, file3.txt
使用grep命令在题2中more_less.txt中查找Linux且输出行号
5.查找命令: whereis , which, locate
whereis: 搜索系统命令的命令,whereis 命令不能搜索普通文件, 而只能搜索系统命令。
题目: 使用whereis 查找 locate命令
which:与whereis最大的不同就是, which 命令在查找到二进制命令的同时,如果这个命令有别名, 则还可以找到别名命令。
题目: 使用which查找whereis命令
locate 命令: 可以按照文件名搜索普通文件的命令 优点: 按照数据库搜索,搜索速度快,消耗资源小。 缺点: 只能按照文件名来搜索文件, 而不能执行更复杂的搜索, 比如按照权限、大小、修改 时间等搜索文件。
题目: 使用locate查找rm命令
6.find的使用
find命令用于按照指定条件来查找文件,格式为“find [查找路径] 寻找条件 操作”。
参数及作用:
参数 作用
-name 匹配名称
-perm 匹配权限(mode为完全匹配,-mode为包含即可)
-user 匹配所有者
-group 匹配所有组
-mtime -n +n 匹配修改内容的时间(-n指n天以内,+n指n天以前)
-atime -n +n 匹配访问文件的时间(-n指n天以内,+n指n天以前)
-ctime -n +n 匹配修改文件权限的时间(-n指n天以内,+n指n天以前)
-nouser 匹配无所有者的文件
-nogroup 匹配无所有组的文件
-newer f1 !f2 匹配比文件f1新但比f2旧的文件
–type b/d/c/p/l/f 匹配文件类型(后面的字母参数依次表示块设备、目录、字符设备、管道、链接文件、文本文件)
-size 匹配文件的大小(+50KB为查找超过50KB的文件,而-50KB为查找小于50KB的
文件)
-prune 忽略某个目录
-exec …… {}; 后面可跟用于进一步处理搜索结果的命令
题目: 1.使用find命令在当前路径下查找所有的普通文件
find . -type f
2.使用find命令查找当前路径下的file1.txt,file2.txt,file3.txt
find . -type f -name "file*"
3. 使用find命令查找文件所有者wxy的普通文件
find . -type f -user wxy
4.使用find命令查找修改时间在1天以内的普通文件
find . -type f -mtime -1
7.cut的使用
cut命令: 用于按列提取文本内容,语法格式为:“cut [参数] 文件名称”
-b:仅显示行中指定直接范围的内容;
-c:仅显示行中指定范围的字符;
-d:指定字段的分隔符,默认的字段分隔符为“TAB”;
-f:显示指定字段的内容;
-n:与“-b”选项连用,不分割多字节字符;
--complement:补足被选择的字节、字符或字段;
--out-delimiter=<字段分隔符>:指定输出内容是的字段分割符;
--help:显示指令的帮助信息;
--version:显示指令的版本信息。
题目: 给定文件cut_data.txt且内容为: No Name Score 1 zhang 20 2 li 80 3 wang 90 4 sun 60 a.使用默认定界符切割文件内容,且输出切割后的第一个字段
b.切割文件内容,且输出切割后的第一个字段和第三个字段
c.按字节切割:输出切割的第一个字节到第10个字节的内容
d.按字符切割:输出切割后的第一个字符和第5个字符的内容
e.按指定分界符去切割:内容如下, 输出第一个字段和第三个字段内容 No|Name|Score 1|zhang|20 2|li|80 3|wang|90 4|sun|60
8.uniq的使用
用于去除文本中连续的重复行,英文全称为:“unique”,
语法格式为:“uniq [参数] 文件名称”。
该命令首先比较相邻的行,然后除去第二行和该行的后续副本,
重复的行一定相邻,一般使用在排序后。
如果分开且重复的使用uniq命令并不能去重。
题目: 新建文件uniq_data.txt,文件内容为 Welcome to Linux Windows Mac Linux Mac Windows 使用uniq命令输出去重后的结果
使用uniqmingl只输出重复的行
使用uniq命令输出不重复的行
使用uniq命令统计重复次数
9.sort 命令
用于对文本内容进行再排序,语法格式为:“sort [参数] 文件名称”。
参数及作用:
-f 忽略大小写
-b 忽略缩进与空格
-n 以数值型排序
-r 反向排序
-u 去除重复行
-t 指定间隔符
-k 设置字段范围
题目: 给定文件 num.txt, args.txt 文件内容:num.txt 1 3 5 2 4 文件内容:args.txt test args1 args2 args4 args4 args3 对num.txt进行排序,且将结果输出到sorted_num.txt中
对args.txt进行排序,且将结果输出到sorted_args.txt中
对num.txt和args.txt进行排序,且将结果输出到sorted_merge.txt中
对args.txt排序后去重输出
合并sorted_args.txt和sorted_num.txt且输出
给定文件info_txt:按第二列作为key进行排序 No Name Score 1 zhang 20 2 li 80 3 wang 90 4 sun 60
10. tr替换命令
Linux tr 命令用于转换或删除文件中的字符。
tr 指令从标准输入设备读取数据,经过字符串转译后,将结果输出到标准输出设备。
语法:
tr [-cdst][–help][–version][第一字符集][第二字符集]
tr [OPTION]…SET1[SET2]
参数及作用:
-c 反选设定字符。也就是符合 SET1 的部份不做处理,不符合的剩余部份才进行转换
-d 删除指令字符
-s 缩减连续重复的字符成指定的单个字符
-t 削减 SET1 指定范围,使之与 SET2 设定长度相等
–help 显示程序用法信息
–version 显示程序本身的版本信息
题目: 将26个小写字母的后13个字母替换成大写字母
将hello 123 world 456中的数字替换成空字符(提示使用通配符)
将hello 123 world 456中字母和空格替换掉,只保留数字(提示使用通配符)
11.wc命令
用于统计指定文本文件的行数、字数或字节数,英文全称
:“word counts”,语法格式为:“wc [参数] 文件名称”。
参数 作用
-l 只显示行数
-w 只显示单词数
-c 只显示字节数
题目: 给定文件:word_count.txt,里面填充10行内容 按字节去统计 按单词去统计 按行去统计
|