支小医

V1

2023/05/08阅读:23主题:默认主题

Linux 常用命令

了解集群配置

lsblk  ##list blocks
df -h ##disk free

内存查看

free ###可使用-k,-m,-g等指定显示的内存单位 

查看当前路径

pwd  ##Print working directory

创建文件夹

mkdir [directory_name] ##make directory,创建单个文件夹
mkdir -p /1/2/3/4/5 ##逐级创建文件夹

改变路径

cd [directory] ##change directory,切换路径
cd ./ ##切换到当前工作路径
cd ../ ##切换到上一层工作路径
cd ~ ##切换到/home/usr目录
cd - ##切换至上一次操作的路径,相当于电视机遥控器返回键

查看路径下的内容

ls ##list 
ls -l
ls -lh
ls -lah
ls -lat
ls -lrt

文件夹的权限

权限修改
chmod [mode][file] ##change mode
chmod 755 tmp1

查看命令帮助文档

man [name] 
man pwd ###查看pwd的帮助文档
help [name]
help pwd ###查看pwd的帮助文档
pwd -h
pwd --help

复制文件(夹)[copy]

cp <file> <temp> ##生成file复本temp
cp <file> ./dir1 ##复制file到dir1目录下
cp –r ./dir1 ./dir2 ##将目录dir1拷贝到dir2,文件夹操作需要加 -r

删除文件(夹)[remove]

rm [options] <name>
rm <file> ##删除文件
rm –r <file or directory> ##将文件或文件目录及子目录逐级递归删除

移动或重命名命令 [move]

mv <file1> <file2> ##将file1更名为file2
mv ./dir ./DIR ##目标文件夹 若./DIR不存在,dir更名为DIR
mv <file1> ./dir ##file1移动到dir里
mv ./dir1 ./dir2 ##若目标文件夹./dir2存在,dir1移动到dir2

文件查看和连接命令 [catenate]

cat [options] <file> ##从第一行开始显示整个文件
cat [options] <file1> <file2> > <file3> ##将file1和file2按行合并生成file3文件,按列合并命令为paste

head/tail [-N] <file> ##输出文件的前/后N行,默认为10行
head -n 6 <file> ##输出文件的前6行

less [options] <file>  ##按页显示文件,通过上下键移动,q退出查看状态,还可以查看目录中内容

cut ##显示文件的指定列或字段
cat file.txt|cut -f1 ##显示file文档的第一列
cat file.txt|cut -f1,3 ##显示file文档的第一,三列

uniq命令

uniq ##根据参数不同,可执行保证每行唯一,只输出唯一行,只输出重复行操作,执行uniq命令之前,需要先对文件进行排序
cat file.txt|sort|uniq ##显示file文档唯一行
cat file.txt|sort|uniq -c ##统计file文档重复行及重复次数
wc -l file.txt##统计file文档的行数

vi/vim文本编辑器

运行vi后,首先进入命令模式 从命令模式切换到输入模式,可以按【i】键 从命令模式切换到底线命令模式,可以按【:】键

命令模式:在此模式下可以进行存盘,退出,剪切等方法处理文件,此时输入的任何字符都被视为命令对待 输入模式:用来输入和编辑文件的模式,屏幕上会显示用户的输入,作为文本写到用户的文件中 底线命令模式:底线命令模式可以输入单个或多个字符的命令,可用的命令非常多

按【Esc】键进入命令模式后的常用命令

/CG ##搜索‘CG’
:w  ##保存文件但不退出文件
:set list ##显示隐藏字符
:wq ##保存并退出
:q! ##不保存并退出

grep命令

grep [option] pattern file
grep -i ##忽略大小写
grep -c ##统计数量
grep -A Num##输出之后Num行
grep -B Num##输出之前Num行
grep -w ##完全匹配的内容才输出
grep -wv ##完全不匹配的内容才输出

例子:

cat /usr/share/dict/words |grep -c apple
cat /usr/share/dict/words |grep -c "^apple"
cat /usr/share/dict/words |grep -vic "[aeiou]"
cat /usr/share/dict/words |grep -c "^g[a-z]\{2\}gle$"

压缩和解压

tar.bz2文件解压命令

tar jxvf samtools-1.17.tar.bz2

重定向

cat file.txt > file1 ## >表示覆盖,>>表示追加
cat /usr/share/dict/words |grep -c apple ## | 将前一个命令的StandardOut作为后一个命令的StandardInput

comm命令

comm [-123][--help][--version][file1][file2]

参数: -1 不显示只在第 1 个文件里出现过的列。 -2 不显示只在第 2 个文件里出现过的列。 -3 不显示只在第 1 和第 2 个文件里出现过的列。 --help 在线帮助。 --version 显示版本信息。

find命令

find [path] [expression]
find ./ -name "test*" ##搜索当前文件夹下含test的文件

sed命令

sed [OPTION] [input-file]
sed -e ‘s/a/A/g' seq.fna ##将文件中a全部替换为大写A
sed -e '
/^\s*$/d' seq.fna ##删除文件中的空白行

sed [options] ‘command’ file(s)

创建一个testfile文件,内容如下

##以行为单位删除(d)
sed '/^$/d' file # 删除空白行 
sed '2d' file # 删除第二行 
sed '$d' file # 删除最后一行 
sed '2,$d' file # 删除第二行到最后一行

sed替换命令

awk命令

##awk 动作 文件名 
cp /etc/passwd demo.txt
awk '{print $0}' demo.txt

# 分隔符  awk –F 
awk -F ':'  '{print  $1}' demo.txt

# 条件  
awk -F ":" '$1=="jilin01" && $2=="x" {print $0}' demo.txt
awk -F ':' 'NR % 2 == 1 {print $1}' demo.txt
awk -F ':' 'NR >305 {print $1}' demo.txt

总结

致谢

致谢吉林大学第一医院管青天老师的提供的教学ppt

分类:

后端

标签:

运维部署

作者介绍

支小医
V1