Linux-based Essential Bioinformatics
Linux生物信息技术基础
北京大学本研合上课

文本处理

本练习以两个简单的文件为例,介绍Linux文本处理常用命令,包括cat, head, tail, sort等,以及Linux系统下文本文件的存放格式。

文件准备

  1. 在Windows系统下用记事本创建文本文档table.txt
    Line 1 - First line, L1, A
    Line 2 - Second line, L2, B
    Line 3 - Third line, L3, C
    Line 4 - Fourth line, L4, D
    Line 5 - Fifth line, L5, E
  2. 用以下命令将上述文件复制粘贴到Linux教学服务器上,文件名为table.txt
    cat >table.txt
    在Windows系统记事本table.txt中复制,在服务器上用右键粘贴
  3. 在Windows系统下用Excel电子表创建文档table.xls
    Line 1 First line L1 A
    Line 2 Second line L2 B
    Line 3 Third line L3 C
    Line 4 Fourth line L4 D
    Line 5 Fifth line L5 E
  4. 用以下命令将上述文件复制粘贴到Linux教学服务器上,文件名为table.xls
    cat >table.xls
    在Windows系统Ecel电子表table.xls中复制,在服务器上用右键粘贴

cat命令

  1. 用以下命令显示上述两个文件,注意它们之间格式区别
    cat table.txt
    cat table.xls
  2. 用以下命令显示table.txt,注意输出结果的变化
    cat table.txt -e
    cat table.txt -n
    cat table.txt -e -n
  3. 用以下命令显示table.xls,注意输出结果的变化
    cat table.xls -t
    cat table.xls -A
    cat table.xls -Ab
  4. 用以下命令显示cat命令用法手册
    man cat
    参数-e含义:显示行末$符号
    参数-n含义:显示行号
    参数-t含义:显示表格分隔符^I
    参数-A含义:显示表格分隔符^I和行末$符号

head和tail命令

  1. 用以下命令显示table.txt前3行
    head table.txt -n 3
  2. 用以下命令显示table.txt后3行
    tail table.txt -n 3
  3. 用以下命令将table.txt前3行保存到文件head3中
    head table.txt -n 3 >head3
  4. 用以下命令将table.txt后3行保存到文件tail3中
    tail table.txt -n 3 >tail3
  5. 用以下命令将head3和tail3合并成一个文件table1
    cat head3 tail3 >table1
    table1 内容如下,注意重复行
    Line 1 - First line, L1, A
    Line 2 - Second line, L2, B
    Line 3 - Third line, L3, C
    Line 3 - Third line, L3, C
    Line 4 - Fourth line, L4, D
    Line 5 - Fifth line, L5, E

sort, shuf和uniq命令

  1. 用以下命令将table1按字母顺序排序后输出结果
    sort table1
  2. 用以下命令将table1按倒序输出结果
    sort table1 -r
  3. 用以下命令将table1按字母顺序排序后输出结果,重复行只显示一次
    sort table1 -u
    参数-u含义:unique
  4. 用以下命令将table1顺序打乱后输出结果,存放到table2中
    shuf table1 >table2
    Line 2 - Second line, L2, B
    Line 3 - Third line, L3, C
    Line 3 - Third line, L3, C
    Line 5 - Fifth line, L5, E
    Line 1 - First line, L1, A
    Line 4 - Fourth line, L4, D
    注意:重复输入该命令,输出先后次序可能不同
英文ABC主页 | 中文LEB主页 | 教学计划 | 教学大纲 | 教学实例 ] [Linux教程 | Linux基础 | Linux命令 | vim键盘图 | 数据科学 ]