[linux] 常用命令及参数-2
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的更多相关文章
- Linux 用户和组 权限管理 常用命令与参数
========================================================================== 1.基本概念: 所有者 : 一般为文件的创建者,谁 ...
- Linux常用命令(一)
Linux常用命令 1. pwd查看当前路径(Print Working Directory) [root@CentOS ~]# pwd/root 2. cd .. 返回上一级 .. 表示上一级 ...
- linux常用命令的介绍
本文主要介绍Linux常用命令工具,比如用户创建,删除,文件管理,常见的网络命令等 如何创建账号: 1. 创建用户 useradd -m username -m 表示会在/home 路径下添加创建用户 ...
- linux 常用命令大全
linux 常用命令大全 系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统 ...
- [工作需求]linux常用命令以及vim常用命令
一. Linux 常用命令 mkdir dirname新建文件夹 cd ~ 进入自己的家目录 cd dirname 进入名字为dirname的目录: l 显示当前文件夹下的文件 ...
- Linux常用命令整理 - imsoft.cnblogs
su 用户名 在不退出登陆的情况下,切换到另外一个人的身份如果用户名缺省,则切换到root状态会提示输入密码,密码不回显的. 在用su命令切换root用户时,使用“-”选项,这样可以将root的环境变 ...
- Linux 常用命令使用方法大搜刮
Linux 常用命令使用方法大搜刮 1.# 表示权限用户(如:root),$ 表示普通用户 开机提示:Login:输入用户名 password:输入口令 用户是系统注册用户成功登陆后,可以进入 ...
- [置顶] linux常用命令手册
前言:整理了一份linux常用命令手册,与大家分享.这是一些比较常用的命令. 我已经整理成一份PDF带书签的手册,可以到CSDN免费下载. 下载地址:http://download.csdn.net/ ...
- Linux常用命令2--用户问题、文件的打包压缩
Linux常用命令 如何进行用户和群组的创建和更改 [1]groupadd:用于创建新的群组. 语法:groupadd [-option] 用户名:其常用参数有:-g groupadd -g 555 ...
随机推荐
- [对对子队]事后总结Beta
设想和目标 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 要做一个游戏,定义的很清楚,实现出来的效果贴近定义,对用户和场景有清晰描述 我们达到目标了么(原计划的功 ...
- 零基础学习Linux所必备的七大习惯
对于很多Linux初学者来说,在刚开始使用linux系统时会感到很多的不适.这里为大家整理了自己以前linux入门时别人告诉我的七个习惯.我相信如果你运用了这七个习惯,在你使用Linux时你会感觉更安 ...
- 『学了就忘』Linux基础 — 6、VMware虚拟机安装Linux系统(超详细)
目录 1.打开VMware虚拟机软件 2.选择Linux系统的ISO安装镜像 3.开启虚拟机安装系统 (1)进入Linux系统安装界面 (2)硬件检测 (3)检测光盘 (4)欢迎界面 (5)选择语言 ...
- Android 服务名称规则invalid service name 限制16字符以内
今天调试网络服务的时候为了区分,修改了原有服务名称,同时新增了两个服务. 系统运行的时候报错找不到对应的服务 init: no such service 'wpa_supplicant_common' ...
- QT判断文件/目录是否存在
最近在用qt写一个ui,遇到删除sd卡中的文件失败情况,有些时候是存在删除链表里面的文件在sd卡上已经不存在了,导致失败,以为我的链表是定时刷新的,但是文件是实时更新会同步覆盖的.这样就存在可能上一秒 ...
- cf14D Two Paths(树的直径)
题意: N个点构成一棵树.树枝的长度都是1. 在当中找两条不相交[没有公共点]的路,使得二者长度之积最大. (2 ≤ n ≤ 200) 思路: 一开始思路好麻烦,好麻烦,好麻烦,,,,,,,而且WA, ...
- 第01课 OpenGL窗口(2)
下一段包括了所有的绘图代码.任何您所想在屏幕上显示的东东都将在此段代码中出现.以后的每个教程中我都会在例程的此处增加新的代码.如果您对OpenGL已经有所了解的话,您可以在 glLoadIdentit ...
- 安装、卸载 node.js出错 Could not access network location *:\node.js\ 出错
上周五,WIN10自动更新系统,导致我的node.js 和 Gradle 还有解压的winRAR都不能用!!!可恶 自动更新!!可恶啊!!! 然后我想把node.js重新卸载了再安装,结果 很慌很慌, ...
- part 36 AngularJS route reload
In this video we will discuss angular route service reload() method. This method is useful when you ...
- 9组-Alpha冲刺-2/6
一.基本情况 队名:不行就摆了吧 组长博客:https://www.cnblogs.com/Microsoft-hc/p/15534079.html 小组人数: 8 二.冲刺概况汇报 谢小龙 过去两天 ...