生信人必备的Linux命令(2/完结)

简介: 生信人必备的Linux命令(2/完结)

1. 管道

在执行命令的时候,管道|符可以将上一个命令的输出作为下一个命令的输入

echo "abc" | wc  # 将echo的输出作为wc的输入
ls -l | less     # 将ls -l 的结果作为less的输入(可以一页一页的显示目录信息)

2. 重定向

将输出>放到文件,或则从文件读取<

echo "abc" > a.txt      # 将abc输出到a.txt文件
cat from.txt > to.txt   # 将文件from.txt文件里面的内容输出到to.txt

3. 文本处理

3.1. grep

文本搜索,是“global search regular expression and print out the line”的简称,搜索结果会将目标行输出,

最常使用的是从文件里面进行搜索。

grep abc /opt/test.txt        # 搜索/opt/test.txt文件中含有abc的行
grep abc -r /opt              # 搜索/opt目录下所有文件,并输出含有abc的行
grep abc -rn /opt             # 输出的时候带上行号
cat test.txt | grep abc       # 从test.txt文件里面搜索abc字符串
cat test.txt | grep -i abc    # 忽略大小写
cat test.txt | grep -E [0-9]+ # 使用正则表达式进行搜索
cat test.txt | grep -n abc    # 结果结果带有行号
cat test.txt | grep -c abc    # 输出搜索的结果数量,只输出一个数字
cat test.txt | grep -v abc    # 输出不含abc的行

3.2. sed

用来编辑文件,编辑后的结果直接输出到终端上,sed在自己编写指令时,需要-e来指定指令,sed中编辑相关的命令,每个编辑的命令都需要来指定行数

  • a  添加
  • d  删除
  • c  替换
  • i  插入
cat test.txt | sed -e 4a\abcd    # 在test.txt第四行后面加一行,内容是abcd
cat test.txt | sed -e 1,4a\abcd  # 在test.txt第1-4行每一行后面都加一行,内容是abcd
cat test.txt | sed -e 1d         # 删除第一行
cat test.txt | sed -e 1,4i\abc   # 在1-4行每一行行前插入一行
cat test.txt | sed -e 1.4c\abc   # 1.4行的内容替换为abc,这里是将四行的内容换成了一行内容

3.3. uniq

将内容去重,单位是行

# test.txt
1
2
2
cat test.txt | uniq 
# 1
# 2

3.4. split

将一个文件按照给定的规则进行分割,可以按照大小,比如一个10MB的文件拆分成10个1MB的文件;也可以按照行数来进行分割,比如5行一个文件

split -6 test.txt output       # 按照行数,每6行拆成一个文件
split -c 1024 test.txt output  # 按照大小,每1024个字节分成一个文件,尽量保持每一行的完整

3.5. wc

统计

wc -w test.txt  # 统计字数
wc -l test.txt  # 统计行数
wc -c test.txt  # 统计字节数

3.6. awk

awk是一种编程语言,但是我更推荐你去学一学python,本文不在讨论。

4. 查找

4.1. find

根据给定的规则来查找文件名和目录

find /opt -name "*.c"    # 查找/opt目录下所有.c为后缀的文件和目录
find /opt -iname "*test" # 查找/opt目录下所有含有test字符串的的文件和目录,并且忽略大小写
find /opt -size "+1M"    # 查找/opt目录下所有大小大于1MB的文件和目录
find /opt -size "-1M"    # 查找/opt目录下所有大小小于1MB的文件和目录
find /opt -ctime "+7"    # 查找/opt目录下7天前更改过的文件

size中的+/-:

  • +   大于
  • -   小于

ctime中的+/-

  • +n   n天前
  • -n   n天内

5. 写在最后

这两篇文章介绍了只一部分命令的使用,下面这些命令你可能还会需要,这里需要你自行去了解这些内容。

  • 使用apt/yum去安装软件
  • 软连接和硬链接ln
  • 检查网络ping/ipconfig
  • man说明书的使用

最后,学会使用Linux命令最好的方法是亲自去多敲一敲。祝你好运!

相关文章
|
1天前
|
安全 Linux Shell
Linux中SSH命令介绍
Linux中SSH命令介绍
13 2
|
1天前
|
NoSQL 关系型数据库 MySQL
linux服务器重启php,nginx,redis,mysql命令
linux服务器重启php,nginx,redis,mysql命令
6 1
|
1天前
|
存储 Linux 程序员
tar命令详解:linux文件打包神器
tar命令详解:linux文件打包神器
|
17小时前
|
Java Linux 网络安全
Linux常用50个命令分享:功能、示例与实用技巧
Linux常用50个命令分享:功能、示例与实用技巧
5 0
|
20小时前
|
机器学习/深度学习 固态存储 Linux
一篇文章讲明白Linux下的ping命令用法与实现
一篇文章讲明白Linux下的ping命令用法与实现
|
21小时前
|
关系型数据库 MySQL Linux
技术笔记:Linux命令的返回值
技术笔记:Linux命令的返回值
|
22小时前
|
移动开发 网络协议 Linux
Linux系统中查看路由表的命令(ip route)
Linux系统中查看路由表的命令(ip route)
3 0
|
1天前
|
Linux 应用服务中间件 nginx
linux下的查找命令
linux下的查找命令
10 0
|
2天前
|
监控 Unix Linux
Linux中grep命令详解
Linux中grep命令详解
|
1天前
|
Linux 数据处理
Linux中sort命令详解
Linux中sort命令详解