[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 ...
随机推荐
- 什么是Sprint计划?
Sprint 计划是Scrum框架中的一个事件,团队将确定他们将在冲刺期间处理的产品积压项目,并讨论他们完成这些产品积压项目的初始计划. 团队可能会发现建立冲刺目标很有帮助,并以此为基础确定他们在冲刺 ...
- [对对子队]Beta设计和计划
需求再分析 Alpha阶段用户反馈的问题主要有三个 新手引导部分没有明确指出合成按钮可以使用下拉框切换目标,因此不少玩家卡在第三关 觉得合成动画太长,希望可以快进或者跳过 对游戏目标很迷惑,不知道为什 ...
- RocketMQ源码详解 | Broker篇 · 其一:线程模型与接收链路
概述 在上一节 RocketMQ源码详解 | Producer篇 · 其二:消息组成.发送链路 中,我们终于将消息发送出了 Producer,在短暂的 tcp 握手后,很快它就会进入目的 Broker ...
- opencv学习(一)——图像入门
图像入门 一.读取图像 在opencv中使用cv.imread(filename, flags)函数读取图像.filename参数表示读取图像的路径.读取图像的路径应完整给出,且不能含有中文,否则在调 ...
- 还在用canvas画格子吗?文字烟花效果更不错噢
大家好,我是小丞同学,一名前端爱好者 欢迎访问博主的个人网站:一口奶盖 "在人间贩卖声音 等凑够满天星辰 放烟花给你看" 上次的烟花有些许平淡,这次来放大招了,让你的名字在天空绽放 ...
- 文件上传漏洞Bypass总结
文件上传漏洞Bypass总结 前端JS验证文件类型: 上传后缀jpg,抓包改为php后缀 ======================================================= ...
- 替换空格 牛客网 剑指Offer
替换空格 牛客网 剑指Offer 题目描述 请实现一个函数,将一个字符串中的每个空格替换成"%20".例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20A ...
- hdu 5172 GTY's gay friends(线段树最值)
题意: GTY有n个朋友,站成一排,每个人有一个特征值ai. 有m个询问.每次询问给两个数L,R.问你[L,R](即aL...aR)是否是1..(R-L+1)的一个全排列. 是输出YES,否则输出NO ...
- C++ new 运算符 用法总结
C++ new 运算符 用法总结 使用 new 运算符 分配内存 并 初始化 1.分配内存初始化标量类型(如 int 或 double),在类型名后加初始值,并用小括号括起,C++11中也支持大括号. ...
- SpringCloud升级之路2020.0.x版-30. FeignClient 实现重试
本系列代码地址:https://github.com/JoJoTec/spring-cloud-parent 需要重试的场景 微服务系统中,会遇到在线发布,一般的发布更新策略是:启动一个新的,启动成功 ...