深度学习炼丹师常用Linux和Docker命令

作为一名初级炼丹术士已经快半年了,记录一下工作中常用的Linux和Docker命令。

Linux命令

top的升级版:

htop

查看GPU实时占用:

watch -n 1 nvidia-smi

或者命令(可以查看GPU的用户占用情况)

pip install gpustat
watch -n 1 gpustat 

统计文件夹下文件数目:

ls | wc -l

统计文件夹下jpg后缀的文件数目:

ls | grep "jpg" | wc -l

查找文件夹下所有jpg后缀的文件(可以递归查找):

 find -name '*jpg'

删除文件夹下所有非jpg后缀的文件:

rm !(*jpg)

ssh连接远程机器:

ssh 用户名@IP地址

跨机器拷贝文件:

scp 本地机器文件名 远程机器用户名@远程机器IP地址:远程机器目标路径

把训练程序挂在后台打印日志及查看日志(防止ssh中断):

nohup python ./train.py >>log.out 2>&1 &
tailf log.out #实时查看日志内容,docker容器用不了tailf命令可以用tail -f替代

杀死后台python进程:

ps -ef | grep python	#查看进程ID
kill -9 进程ID

Docker命令

拉取镜像:

docker pull 镜像名称

从镜像创建并启动容器(设置使用所有GPU,设置挂载目录):

docker run -it --gpus all -v 宿主机绝对路径:容器内挂载路径 --name 容器名称 镜像名称 /bin/bash

启动容器:

docker start 容器名称

对容器进行交互操作:

docker exec -it 容器名称 /bin/bash

退出容器:

exit #在容器内操作

停止容器:

docker stop 容器名称

删除容器:

docker rm 容器名称

重命名容器:

docker rename 容器名称

容器和宿主机之间文件拷贝:

docker cp 宿主机路径 容器名称:容器内路径   #宿主机拷贝文件到容器
docker cp 容器名称:容器内路径 宿主机路径	#容器拷贝文件到宿主机

你可能感兴趣的:(Linux,docker,linux)