Linux 的强大之处,很大一部分来源于其高效、灵活的命令行操作。本篇作为 Linux 学习笔记的第一篇,主要记录和整理一些最基础、最常用的命令,适合刚入门的同学反复查阅与练习。
一、目录与文件查看:ls
ls(list)用于显示当前目录下的文件和文件夹。
ls # 显示当前目录下的内容 ls --help# 查看 ls 命令的帮助信息和参数说明 ls -a # 显示所有文件,包括以 . 开头的隐藏文件 ls -l # 以详细格式显示文件信息 ls -h # 以人性化方式显示文件大小(K/M/G) ls -t # 按修改时间排序(默认按文件名) ls -htl # 参数组合使用(常用)`
ls -l 输出信息依次为:
文件类型与权限 | 硬链接数 | 所有者 | 所属组 | 文件大小 | 修改时间 | 文件名
二、工作目录相关操作
1. 创建与查看目录
mkdir new_dir # 创建目录(make directory) pwd# 显示当前所在路径(print working directory)`
2. 切换目录
cd <路径> # 切换工作目录(change directory) cd ~ # 切换到当前用户的主目录 cd ./bio/ # 切换到当前目录下的bio文件夹 cd ../hhz/ # 切换到上一级目录下的hhz文件夹`
常见路径符号说明:
三、文件的复制、移动与删除
cp # 复制文件(copy)mv # 移动文件或重命名文件(move) rm # 删除文件(remove) rmdir # 删除空目录 rm -r # 递归删除目录及其所有内容`
强制删除(慎用)
rm -f # 强制删除文件,不提示 rm -rf # 强制递归删除目录(极其危险)`
注意:Linux 中删除操作不可恢复,请务必确认路径是否正确。
四、文件内容查看与简单处理
cat SNP_1.list # 查看文件内容`
1. 文件合并
cat SNP_1.list SNP_2.list > SNP.list # 合并文件(增加行数)
2. 分页查看文件
less SNP.list # 可前后翻页、搜索 more SNP.list # 简单分页,显示进度百分比`
3. 查看文件的前/后几行
head SNP.list # 默认显示前 10 行 head -n 6 SNP.list # 显示前 6 行 tail SNP.list # 默认显示后 10 行 tail -n 6 SNP.list # 显示后 6 行
4. 按列处理文件
cut -f 3 SNP_1.list # 显示第 3 列(默认以制表符分隔)paste SNP_1.list SNP_2.list > SNP_3.list # 按列合并文件(增加列数)
五、文件排序:sort
sort fruit.txt # 按 ASCII 码升序排序sort -n -r number.txt # -n:按数字大小排序 # -r:降序排序sort -t : -k2n fruit.txt # -t :指定分隔符 # -k2n:按第 2 列进行数字排序
六、去重统计:uniq
uniq 用于处理相邻重复行,通常需要先配合 sort 使用。
sort test.txt | uniqcut -f 1 SNP_test.list | sort | uniq -c
常用参数说明
七、文本处理利器:awk
awk 是 Linux 中非常强大的文本处理工具,以“行”为单位进行处理。
1. 基本语法
awk '{pattern + action}' 文件 awk 'pattern {action}' 文件
2. 常用内置变量
3. BEGIN 与 END 模块
4. 示例
# 显示第 6~12 行的第 3 列 awk 'NR>=6 && NR<=12 {print $3}' SNP_test.list`# 对第一列数值求和 awk 'BEGIN{sum=0} {sum+=$1} END{print sum}' SNP_1.list`