2041_20T2_Q3
uniq -c之后的处理需要注意。首先是如何搜索那个计数,匹配若干个空格开头然后2之后紧接空格的。
然后截取的时候需要先处理好前面的一大堆空格,不然直接cut -d “ “会出很多空格
1 | !/bin/dash |
uniq -c之后的处理需要注意。首先是如何搜索那个计数,匹配若干个空格开头然后2之后紧接空格的。
然后截取的时候需要先处理好前面的一大堆空格,不然直接cut -d “ “会出很多空格
1 | #!/bin/dash |
用set去重。
1 | #!/usr/bin/env python3 |
要用学号和名字一起来去重。
cut和python的split方法不一样的地方在于cut -d选项只能放一个字符,所以用逗号分割之后,后半段的名字会以空格开头,因此最后用空格分割去找第一个名字的时候需要用第二个。
1 | #!/bin/dash |
需要注意空格。注意strip
1 | #!/usr/bin/env python3 |
gzip的命令 mkdir的-p选项
1 | #!/bin/dash |
如果只让用之前学过的方法的话,就只能手动这样提取前后缀然后拼接了。对于$2的数字的匹配是贪婪的,会匹配到最后一位数字。
1 | #!/bin/dash |
还有一种方法是shell参数扩展,
写完才知道ls 文件名 | wc -l是不多一行可以直接出结果的 ,我用的是-l会多一行total。
我以为不加选项的ls是没法用wc的,因为似乎不是每行一个输出。
值得注意的是这个*,它会匹配当前目录下的所有文件和目录,包括隐藏文件和目录。
这里的*是通配符,触发了shell的路径名展开机制。
1 | #!/bin/dash |
q1的python-stdin实现
用startswith来匹配
1 | #!/usr/bin/env python3 |
0难度
1 | #!/bin/dash |