第2章: UNIX指令

文件popular-names.txt以制表符(TAB)为分隔,存储了美国新生儿的有关信息(姓名,性别,人数与出生年份)。编写程序以完成下列处理,并将文件popular-names.txt作为输入运行该程序。进一步地,请确认通过执行UNIX命令也能获得相同或类似的结果。

10. 行数计算

计算文件的总行数。使用wc命令确认结果。

11. 替换制表符为空格

将所有制表符替换为空格。使用sed, tr, 或 expand 命令确认结果。

12. 第一列保存在col1.txt中,第二列保存在col2.txt中

提取每一行第一列的信息,将其输出并存储为col1.txt。提取每一行第二列的信息,将其输出并存储为col2.txt。使用cut命令确认结果。

13. 合并col1.txt与col2.txt

合并文件col1.txtcol2.txt的内容,并存储为一个新的文本文件。该文件中,每行包含初始文件第一列与第二列的值,列与列之间以制表符分隔。使用paste命令确认结果。

14. 前N行

以命令行参数等形式接收自然数\(N\),输出文件前\(N\)行的内容。使用head命令确认结果。

15. 后N行

以命令行参数等形式接收自然数\(N\),输出文件后\(N\)行的内容。使用tail命令确认结果。

16. 将文件分为N份

以命令行参数等形式接收自然数\(N\),按“行”为单位将原文件分割成\(N\)份。使用split命令确认结果。

17. 第一列中的非重复字符串

列出文件第一列中所有字符串的种类(即所有不重复的字符串组合)。使用cut, sortuniq 命令确认结果。

18. 以第三列为指标对各行进行降序排序

在不改变每行内容的前提下,按第三列的数值大小对所有行降序排序。使用sort命令确认结果,但程序的运行结果无需与其完全一致。

19. 降序排列第一列各字符串的出现频率

求各行第一列中每种字符串的出现频率,并按该频率将其降序排列。使用cut, sortuniq 命令确认结果。