sort

1 sort是把结果输出到标准输出,因此需要输出重定向将结果写入文件
2 sort seq.txt > file.txt
3 sort -u seq.txt 输出去重重复后的行
4 sort -r number.txt 逆向排序
5 sort -r number.txt -o file.txt -o具有输出重定向的作用
6 sort -n number.txt 将数字按照大小排序,而不是按照ASCII码排序
7 sort -n -k 3 -t : seq.txt -t:指定分隔符;-k:指定分隔符分割的字段
8 sort a.txt b.txt | uniq -d 取交集
9 sort a.txt b.txt | uniq 取并集
10 sort a.txt b.txt b.txt | uniq -u 取差集(a-b)
11 sort b.txt a.txt a.txt | uniq -u 取差集(b-a)

grep

1 \w 代表字母数字下划线
2 \W 代表非字符
3 \b 单词分隔符 '\bX\b'
4 '[A-Z][a-z]' 一个大写字母加一个小写字母
5 'm..c'
6 '[0-9][0-9]' 两个数字
7 'se\+' +表示重复多次时,要加'\'
8 'se\?' 同上
9 '\(se\)*' 括号也需要加'\'
10 '[0-9]\{2,3\}' 重复2-3次,大括号要加'\'
11 + ? * 表示不同程度的重复

sed

1 sed是行处理工具,每次处理一行的内容
2 通过正则选定文本——>sed进行处理
3 sed -n 'p' grep 打印输出
4 sed -n '10p' grep 打印第10行
5 sed -n '5,10p' grep 打印第5-10行
6 sed -n '5,10!p' grep 不打印第5-10行
7 sed -n '1~2p' grep first~step
8 sed '1,5a=========' grep 在1-5行之前增加===
9 sed '1,5i=========' grep 在1-5行之前插入===
10 sed '10c heldfada' grep 第10行替换成后面的文字 5,10c 5-10行整体替换
11 sed '40d' grep 删除第40行
12 sed '$a print hello \nprint yes' sed 在文章的结尾增加两行 $a \ 区分
13 sed '/^$/d' grep 删除空行
14 sed 's/false/true/' grep 替换 /g 全局替换
15 sed -n '{n;p}' grep 输出偶数行 n读入一行,p输出一行
16 sed -n '{p;n}' grep 输出奇数行
17 {} 可以输入多个命令;用分号隔开
18 s/W/W123/ 也可以写成s/W/&123/
19 \u 首字母大写 \l 首字母小写 \U \L
20
21 sed 's/(^[a-z]\+.*$)/\1/' grep 替换中使用\1捕获
22 sed 's/w1(w2)w3/\1/' grep 替换命令
23
24 sed '1r 123.txt' abc.txt 读入123.txt文件,输入到abc.txt文件的第一行后
25 sed 'w abc.txt' 123.txt 把123.txt文件写入abc.txt覆盖

awk

2 可以编程,处理灵活,功能强大,适合处理复杂文本
3 awk一次处理一行内容,可以对每行进行切片处理
4 awk '{print $1}' 输出收个单词 也可以对print的内容进行书写如print $1"\t"$2
5 awk -F ':' '{print $3}' /etc/passwd F:分隔符
6 awk -F ':' '{print NR NF}' /etc/passwd NR:行号; NF:列号
7 awk -F ':' '$1~/^m.*/{print $1}' /etc/passwd 第一个字段匹配正则表达式 !~ 不匹配
8 awk -F ':' '$3>100{print $1,$3}' /etc/passwd 也可以用逻辑判断来匹配
9 awk -F ':' 'BEGIN{print"Line name num"}{print NR,NF,$1}END{print"FILENAME"}' /etc/passwd > a.txt
10 awk -F ':' 'BEGIN{count=0}$1!~/^$/{count++}END{print"count="count}' /etc/passwd
11 $0 代表整行

cut

1 cut处理文件的每一行,并输出至标准输出
2 -b:以字节为单位切割;-c:以字符为单位切割(切割中文时有区别);-d:指定分隔符,默认为\t;-n:指定不把一个中文字符分割;-f:域
3 cut -b 3-8 切割第3-8字节
4 cat /etc/passwd|head -n 5|cut -d : -f 1
5 cut -d '' -f 1 只能处理一个空格,若有多个空格则不能处理

paste

1 paste是将多个行数相同的文件按行合并
2 paste aa bb 将aa和bb按行合并
3 paste -d ':' aa bb 指定分隔符;默认分隔符为\t
4 ls |paste -d ' ' - - - - 指定每行的元素有4个
5 paste -s a.txt -s 将一个文件的多行数据一行显示

join

依照两个文件里共有的某一列,将相应的行拼接成一行
1 join a.txt b.txt 两个文件必须依照相同的规则进行排序
2 join -a1 a.txt b.txt 显示第一个文件的不匹配行;-a2显示第二个文件的不匹配行
3 join -1 2 -2 2 a.txt b.txt 以第一个文件第2列和第2个文件第2列作为匹配字段
4 join -o 1.2,2.2 a.txt b.txt 部分连接,选择第一个文件和第二个文件的第2部分进行连接

split

split a.fasta 默认按每个文件1000行进行分割
split -n a.fasta 按指定n行对文件进行分割,n是具体数字

[linux] 常用命令及参数-2的更多相关文章

  1. Linux 用户和组 权限管理 常用命令与参数

    ========================================================================== 1.基本概念: 所有者 : 一般为文件的创建者,谁 ...

  2. Linux常用命令(一)

    Linux常用命令 1. pwd查看当前路径(Print Working Directory)    [root@CentOS ~]# pwd/root 2. cd .. 返回上一级 .. 表示上一级 ...

  3. linux常用命令的介绍

    本文主要介绍Linux常用命令工具,比如用户创建,删除,文件管理,常见的网络命令等 如何创建账号: 1. 创建用户 useradd -m username -m 表示会在/home 路径下添加创建用户 ...

  4. linux 常用命令大全

    linux 常用命令大全 系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统 ...

  5. [工作需求]linux常用命令以及vim常用命令

    一.             Linux 常用命令 mkdir dirname新建文件夹 cd ~ 进入自己的家目录 cd dirname 进入名字为dirname的目录: l 显示当前文件夹下的文件 ...

  6. Linux常用命令整理 - imsoft.cnblogs

    su 用户名 在不退出登陆的情况下,切换到另外一个人的身份如果用户名缺省,则切换到root状态会提示输入密码,密码不回显的. 在用su命令切换root用户时,使用“-”选项,这样可以将root的环境变 ...

  7. Linux 常用命令使用方法大搜刮

    Linux 常用命令使用方法大搜刮 1.# 表示权限用户(如:root),$ 表示普通用户  开机提示:Login:输入用户名  password:输入口令   用户是系统注册用户成功登陆后,可以进入 ...

  8. [置顶] linux常用命令手册

    前言:整理了一份linux常用命令手册,与大家分享.这是一些比较常用的命令. 我已经整理成一份PDF带书签的手册,可以到CSDN免费下载. 下载地址:http://download.csdn.net/ ...

  9. Linux常用命令2--用户问题、文件的打包压缩

    Linux常用命令 如何进行用户和群组的创建和更改 [1]groupadd:用于创建新的群组. 语法:groupadd [-option] 用户名:其常用参数有:-g groupadd -g 555 ...

随机推荐

  1. Java正则中"\\\\"表示普通反斜杠

    Java中"\"用于转义字符,"\\"表示普通无转义功能的反斜杠. 如果将字符串当做正则表达式来解析,那么"\\"也有了特殊意义,它与其后的 ...

  2. HttpClient.PatchAsJsonAsync - dotnet/runtime 项目贡献小记

    TL;DR 迫于 PatchAsJsonAsync 方法缺失,我给 dotnet/runtime 项目贡献了相关的 API,可惜要到 .NET7 才能用上. https://github.com/do ...

  3. BUAA 2020 软件工程 个人项目作业

    BUAA 2020 软件工程 个人项目作业 Author: 17373051 郭骏 项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 个人项目作业 ...

  4. 2021.7.27考试总结[NOIP模拟25]

    罕见的改完了题 T1 random 一堆概率,一堆函数,一堆递归,一眼不可做, 但它只有一个参数,所以.. 熠神本着"只有20太难看"的心态,通过样例三个出规律,口胡了一波$\fr ...

  5. 用C++实现的数独解题程序 SudokuSolver 2.6 的新功能及相关分析

    SudokuSolver 2.6 的新功能及相关分析 SudokuSolver 2.6 的命令清单如下: H:\Read\num\Release>sudoku.exe Order please: ...

  6. Go并发编程--Mutex/RWMutex

    目录 一.前言 二. Mutex 2.1 案例 三. 实现原理 3.1 锁的实现模式 3.2 Go Mutex 实现原理 3.2.1 加锁 3.2.2 解锁 四. 源码分析 4.1 Mutex基本结构 ...

  7. DH密钥交换

    DH密钥交换 密模运算 所谓幂模,就是先做一次幂运算,再做一次模运算. 模运算有以下性质: 也就是说,先模再乘和先乘再模,只要最后都模了同一个模数,结果都是一样. 有了这个性质,我们首先得到幂模运算的 ...

  8. cf Inverse the Problem (最小生成树+DFS)

    题意: N个点.N行N列d[i][j]. d[i][j]:结点i到结点j的距离. 问这N个点是否可能是一棵树.是输出YES,否则输出NO. 思路: 假设这个完全图是由一棵树得来的,则我们对这个完全图求 ...

  9. javac 不是内部或外部命令 和 错误 找不到或无法加载主类 的解决方法

    使用package语句与import语句. 实验要求:按实验要求使用package语句,并用import语句使用Java平台提供的包中的类以及自定义包中的类.掌握一些重要的操作步骤. 代码: 模板1: ...

  10. 亚马逊开发者用户授权 AWS

    在开发之前最好的方法是先拿到官网的API文档简单的预览一遍 这里有个中文文档:AWS 开发中文文档 需要准备: 注册成为开发者 创建 AWS 账户 创建 IAM 用户 创建 IAM 策略 创建 IAM ...