Linux常用命令
一、 文件与目录管理
| 命令 | 用法示例 | 说明 |
|---|---|---|
| ls | ls -lh |
列出文件详细信息,-h 以易读格式(GB/MB)显示大小 |
| cd | cd ~ |
切换路径,~ 代表家目录,- 代表上一次所在目录 |
| pwd | pwd |
显示当前所在路径的全路径 |
| mkdir | mkdir -p a/b/c |
递归创建多级目录 |
| cp | cp -r src/ dst/ |
递归拷贝文件夹 |
| mv | mv old.txt new.txt |
移动或重命名文件/文件夹 |
| rm | rm -rf dir/ |
慎用:强制递归删除文件或目录 |
| find | find . -name "*.py" |
在当前目录及其子目录下查找所有 .py 文件 |
| du | du -sh * |
查看当前目录下各个文件/文件夹占用磁盘的大小 |
| df | df -h |
查看系统整体磁盘剩余空间 |
二、 文本查看与编辑
| 命令 | 用法示例 | 说明 |
|---|---|---|
| vim | vim train.py |
终端文本编辑器。进入后按 i 编辑,Esc 后输入 :wq 保存退出 |
| cat | cat log.txt |
一次性打印整个文件内容 |
| head/tail | tail -n 100 log.txt |
查看文件前/后 100 行 |
| tail -f | tail -f train.log |
实时查看文件新增内容,常用于监控训练日志 |
| grep | grep "Loss" log.txt |
在文件中搜索包含 “Loss” 关键字的行 |
| less | less log.txt |
分页查看大文件,按 Q 退出,支持上下翻页 |
三、 环境设置与系统信息
| 命令 | 用法示例 | 说明 | |
|---|---|---|---|
| export | export PATH=$PATH:/dir |
设置环境变量(临时生效) | |
| source | source ~/.bashrc |
立即激活配置文件中的改动 | |
| env | `env \ | grep CUDA` | 查看当前系统的环境变量 |
| nvidia-smi | watch -n 1 nvidia-smi |
查看GPU信息。配合 watch 可每秒刷新一次 |
|
| uname | uname -a |
查看系统内核及版本信息 | |
| which | which python |
查看当前使用的命令(如python)指向哪个二进制文件路径 |
四、 进程管理与资源监控
| 命令 | 用法示例 | 说明 | |
|---|---|---|---|
| top/htop | top |
实时查看CPU、内存占用。推荐安装 htop 界面更友好 |
|
| ps | `ps -ef \ | grep python` | 查看所有与python相关的进程 |
| kill | kill -9 <PID> |
强行杀死指定进程号的进程 | |
| & | python a.py > log.txt & |
将任务放入后台运行 | |
| nohup | nohup python a.py & |
忽略挂断信号运行,即使关闭终端程序也会继续运行 | |
| ctrl+c | Ctrl + C |
终止当前正在运行的前台程序 | |
| ctrl+z | Ctrl + Z |
挂起当前程序(暂停并转入后台) |
五、 压缩、下载与网络
| 命令 | 用法示例 | 说明 |
|---|---|---|
| tar | tar -czvf a.tar.gz dir/ |
压缩:c(创建) z(gzip格式) v(显示过程) f(文件名) |
| tar | tar -xzvf a.tar.gz |
解压:x(提取) |
| zip/unzip | unzip data.zip |
解压 zip 文件 |
| wget | wget http://url/file |
通过URL下载文件 |
| curl | curl ip.sb |
网络请求工具,常用于测试API或查看公网IP |
| scp | scp file user@ip:/path |
远程拷贝文件到另一台机器 |
六、 常用场景速查
场景 1:训练任务后台运行并记录日志1
2
3
4# 不推荐直接运行,推荐配合 nohup 和重定向
nohup python -u train.py > train.log 2>&1 &
# -u 参数:使python不启用缓冲,实时将日志写入文件
# 2>&1:将错误输出也重定向到标准输出
场景 2:查看显存占满但找不到进程1
2
3# 有时 ps 找不到,可以尝试
fuser -v /dev/nvidia*
# 这会列出所有正在使用GPU显存的进程PID
场景 3:清理磁盘空间1
2
3
4# 找出当前目录下大于100M的文件
find . -type f -size +100M
# 查看哪个文件夹最占空间
du -h --max-depth=1
场景 4:权限不足1
2
3# 如果遇到 Permission denied
chmod +x script.sh # 添加执行权限
chmod 777 file # 给所有人最高权限(慎用)
场景 5:快速搜索历史命令1
# 按 Ctrl + R,然后输入关键字,可以快速找以前输入过的长命令
七、 符号小结
~:当前用户主目录(Home).:当前目录..:上一级目录>:覆盖重定向(清空原文件再写入)>>:追加重定向(在原文件末尾写入)|:管道符(将前一个命令的输出作为后一个命令的输入)*:通配符(代表任意字符)
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 The Site Of Liu!






