生信人必备的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命令最好的方法是亲自去多敲一敲。祝你好运!

相关文章
|
4天前
|
Linux Python Perl
Linux命令删除文件里的字符串
Linux命令删除文件里的字符串
15 7
|
4天前
|
Shell Linux
Linux shell编程学习笔记82:w命令——一览无余
Linux shell编程学习笔记82:w命令——一览无余
|
6天前
|
Linux Perl
Linux之sed命令
Linux之sed命令
|
6天前
|
Linux
深入理解Linux中的cp命令:文件与目录的复制利器
深入理解Linux中的cp命令:文件与目录的复制利器
|
6天前
|
Linux Docker 容器
9. 同步执行Linux多条命令
9. 同步执行Linux多条命令
|
6天前
|
Linux Shell
10-10|linux命令查询 关键字在文本中出现的行数
10-10|linux命令查询 关键字在文本中出现的行数
|
6天前
|
存储 Linux Shell
常用vim命令和vim基本使用及Linux用户的管理,用户和组相关文件
这篇文章介绍了Vim编辑器的基本使用、常用命令和模式,以及Linux系统中用户和组的管理方法,包括用户和组相关文件如/etc/passwd、/etc/shadow和/etc/group的说明。
常用vim命令和vim基本使用及Linux用户的管理,用户和组相关文件
|
7天前
|
Linux Docker 容器
linux之docker命令
linux之docker命令
|
6天前
|
Ubuntu Linux Shell
10-21|在linux我如果修改了时间,什么命令可以恢复正确啊
10-21|在linux我如果修改了时间,什么命令可以恢复正确啊
|
6天前
|
Linux Perl
6-20|linux sed命令
6-20|linux sed命令
下一篇
无影云桌面