蔡狗_linux03 练习 管道相关命令

课后题

1、cut命令中各个参数表示什么意思?
(1)-b 仅显示行中指定直接范围的内容
(2)-c 仅显示行中指定范围的字符
(3)-d 指定字段的分隔符,默认的字段分隔符为“TAB”
(4)-f 显示指定字段的内容
(5)–complement 补足被选择的字节、字符或字段
(6)-n 与“-b”选项连用,不分割多字节字符
(7)–version 显示指令的版本信息
2、写出下列操作
有一个学生信息表student1.txt,包括字段Num,Name,Age,Score
01 tom 16 80
02 jack 18 89
03 jim 17 70
(1)选取第3字段内容 cut -f 3 student1.txt
(2)选取前两行的第1字段内容 head -2 student1.txt|cut -f 1
(3)选取第2,3字段的内容 cut -f 2,3 student1.txt
(4)选取除了第2字段的所有内容 cut -f2 --complement student1.txt

有一个学生信息表student2.txt,包括字段Num,Name,Age,Score
01,tom,16,80
02,jack,18,89
03,jim,17,70
(1)选取第2字段的内容 cut -f2 -d “,” student2.txt
(2)选取除去第2字段的内容 cut -f2 -d ”,” --complement student2.txt

有一个信息表test.txt
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
abcdefghijklmnopqrstuvwxyz
(1)选取第1到3个字符 cut -c1-3 test.txt
(2)选取前5个字符 cut -c-5 test.txt
(3)选取第6个字符开始到结尾的内容 cut-c6- test.txt
3、sort命令中各个参数表示什么意思?
(1) -b 忽略每行前面开始出的空格字符。
(2) -c 检查文件是否已经按照顺序排序。
(3) -d 排序时,处理英文字母、数字及空格字符外,忽略其他的字符。
(4) -f 排序时,将小写字母视为大写字母。
(5) -i 排序时,除了040至176之间的ASCII字符外,忽略其他的字符。
(6) -m 将几个排序好的文件进行合并。
(7) -M 将前面3个字母依照月份的缩写进行排序。
(8) -n 依照数值的大小排序。
(9) -o<输出文件> 将排序后的结果存入指定的文件。
(10) -r 以相反的顺序来排序。
4、对文件test.txt中的内容进行排序输出 sort test.txt
5、对文件test.txt中的内容进行排序并进行去重输出 sort -u test.txt
6、对文件test.txt中的内容数值大小进行升序输出 sort -n test.txt
7、对文件test.txt中的内容数值大小进行降序输出 sort -nr test.txt
8、对文件test.txt中的内容数值大小进行升序输出到文件test2.txt sort -nr test.txt -o test2.txt
9、按照文件date.txt中的日期月份进行升序输出 sort -n -k 2 -t ‘-’ date.txt
2019-11-22
2019-02-10
2019-10-15
2019-06-28
10、查看文件test.txt有多少个字节? wc -c test.txt
11、查看文件test.txt有多少个单词? wc -w test.txt
12、查看文件test.txt有多少行? wc -l test.txt
13、查看文件test.txt有多少字符数? wc -m test.txt
14、查看多个文件test1.txt ,test2.txt,test3.txt 各有多少行? wc -l test1.txt test2.txt test3.txt
15、统计home目录下多少个子文件 ls /home |wc -l
16、有一个成绩单score.txt 有姓名和成绩两个字段name score
xiaoming 90
xiaopeng 80
xiaoming 90
xiaodong 92
xiaoming 90
xiaoli 85
xiaoli 85
xiaobai 82
对score.txt文件按照成绩进行降序并去重操作,并且把重复的个数显示出来
cat score.txt|sort -n -k 2|uniq -c
17、将16题的结果通过tee保存到tee.txt文件 cat score.txt|sort -n -k 2|uniq -c|tee tee.txt
18、tr命令各个参数表示什么意思
(1)用法为tr [参数] SET1…
(2)-c 补足SET1
(3)-d 删除匹配SET1的内容,并不作替换
(4)-s 如果匹配于SET1 的字符在输入序列中存在连续的重复,在替换时会被统一缩为一个字符的长度
19、使用tr命令删除文件test.txt中的空行 cat test.txt | tr -s ‘\n’
20、使用tr命令删除文件test.txt中所有的数字 cat test.txt|tr -d ‘[0-9]’
21、使用tr命令把文件test.txt中的字符串去重操作 cat test.txt|tr -s ‘[a-zA-Z]’
22、使用tr命令把文件test.txt中的除了数字之外的内容都替换成”=”号 cat test.txt|tr -c ‘[0-9]’ ‘=’
23、使用tr命令把文件test.txt中的小写字母全部替换成大写字母 cat test.txt |tr ‘[a-z]’ ‘[A-Z]’
24、split命令中各个参数表示什么意思?
(1)-b 值为每一输出的大小,单位为byte
(2)-d 使用数字作为后缀
(3)-l 值为每一输出档的行数大小
25、对大文件test.txt按照每个小文件1M进行切分 split -b 1024k test.txt
26、对大文件test.txt按照每100行问一个小文件进行切分 split -l 100 test.txt
27、大文件test.txt按照每个小文件1M进行切分,并指定以3个数字为结尾的文件名 split -b 1024k test.txt -d -a 3
28、大文件test.txt按照每个小文件1M进行切分, 并且指定以test_file为小文件名的开始,结尾跟3位的数字 split -b -1024k test.txt -d -a 3 test_file
29、awk的三种基本格式
awk ‘pattern’ filename
awk ‘{action}’ filename
awk ‘pattern {action}’ filename
30、使用awk命令模糊查找文件test.txt中的字符串chuanzhi awk ‘/chuanzhi/’ test.txt
31、使用awk命令对文件test.txt 文件按照’;‘进行切割,并把第1,2,3的字段的打印出来
awk -F ‘;’ ‘{print $1,$2,$3}’ test.txt
32、文件test.txt 有三列分别为 姓名 学科 成绩用”;”进行分割的,请按照成绩进行排序,并把第三列成绩打印出 awk -F ‘;’ ‘{print $3}’ test.txt |sort
33、文件test.txt 有三列分别为 姓名 学科 成绩用”;”进行分割的,请使用awk命令把及格的同学的信息打印出来并显示及格 awk -F ‘;’ ‘{if($3>60) print $1,$2,$3,”及格”}’ test.txt
34、awk的内置字符串函数有哪些?
(1)gsub(r,s):在输入文件中用s替换r
(2)gsub(r,s,t):在t中用s替换r
(3)index(s,t):返回s中字符串第一个t的位置
(4)length(s):返回s的长度
(5)match(s,t):测试s是否包含匹配t的字符串
(6)split(s,t):在t上将r分成序列s
(7)sub(r,s,t):将t中第一次出现的r替换成s
(8)substr(r,s):返回字符串r中从s开始的后缀部分
35、使用awk命令求出test.txt文件中的行数 awk ‘{count++;print $0;} END{print "当前文件的行数为: ",count}’ test.txt
36、使用awk命令只查看文件test.txt中的第50-60行的内容 awk ‘{if(NR>=50&& NR<=60) print $0}’ test.txt
37、awk常用的内置变量有哪些?
(1)FS:输入字段分隔符, 默认为空白字符
(2)OFS:输出字段分隔符, 默认为空白字符
(3)RS:输入记录分隔符(输入换行符), 指定输入时的换行符
(4)ORS:输出记录分隔符(输出换行符),输出时用指定符号代替换行符
(5)NF:number of Field,当前行的字段的个数(即当前行被分割成了几列),字段数量
(6)NR:行号,当前处理的文本行的行号。
(7)FNR:各文件分别计数的行号
(8)FILENAME:当前文件名
(9)ARGC:命令行参数的个数
(10)ARGV:数组,保存的是命令行所给定的各参数
38、求文件test.txt中字符a出现的次数 awk ‘{a=gsub(/a/,“0”);sum = sum + a ; print KaTeX parse error: Expected 'EOF', got '}' at position 4: 0,a}̲END{print "一共替换… 表示最后一行
40、用sed命令打印出test.txt文件的第10-20行内容 sed -n -e ‘10,20p’
41、用sed命令打印出test.txt文件的全部内容并显示行号 sed -n -e ‘1, = ′ − e ′ 1 , =' -e '1, =e1,p’ test.txt
42、使用sed命令查询test.txt文件中含有test的内容 nl test.txt |sed -n -e ‘/test/Ip’
43、使用sed命令删除test.txt文件的第1行 sed -i ‘1d’ test.txt
44、使用sed命令删除test.txt 文件的末行 sed -i ‘KaTeX parse error: Expected group after '^' at position 51: …件的空行 sed -i '/^̲/d’ test.txt
46、使用sed命令删除test.txt 文件的含有testi的内容行 sed -i /test/{d}’ test.txt
47、使用sed命令在test.txt每一行的行首增加test sed -i ‘s/^/test/’ test.txt
48、使用sed命令在test.txt每一行的行尾增加test sed -i ‘s/ / t e s t / ′ t e s t . t x t 49 、 使 用 s e d 命 令 在 t e s t . t x t 中 第 6 行 的 行 尾 追 加 一 行 内 容 为 t e s t s e d − i ′ N ; 6 a t e s t ′ t e s t . t x t 50 、 使 用 s e d 命 令 在 t e s t . t x t 中 第 3 行 的 行 首 追 加 一 行 内 容 为 t e s t s e d − i ′ N ; 3 i t e s

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值