Linux命令整理
- su 进入root模式
- sudo 基本用户命令模式
- &基本用户模式命令输入 #root命令模式和输入
- passwd 修改密码
- ls -l directory查看文件属性
- man 帮助,查看某一命令的使用方法
- rm 删除某一文件(注意linux所有文件删除不可恢复)
- rm -rf xxxx 删除文件夹
- mv A B 对A文件(夹重命名)、或者从A移动到B
- cp A B 将A文件的内容复制到B文件中, 若复制的是文件夹:cp -a A B
- chmod 修改某一文件(夹)的权限;三种权限:owner group other 代表 root权限 用户权限 和用户非终端权限;对于某一文件,有可读/可写/可运行三种权限,用二进制的形式来修改权限如5表示101,表示可读/可运行
- whereis 查找某以命令所在的位置
- cd +路径 将当前目录置为路径 cd…返回上一级目录 cd-返回前一次的目录
- date 访问当前时间
- cat 现实文本文件的内容
- vi/vim 查看文件的内容,也可以编辑并保存。
- mkdir 创建一个文件夹
- touch创建一个文件
- file查看文件的类型
- tar cf 名字 文件(夹) 文件(夹)//将两个文件打包到新文件中
- tar cjf 名字 文件(夹) 文件(夹)//打包并压缩 需要注意新的文件的名字必须是全名,包括文件的类型 //j代表bz2类型 如果改成z则压缩成jzj文件
- tar tvf +tar文件或者压缩文件//查看tar文件或压缩文件中内容
- tar xf +压缩文件±C +文件名 //将压缩文件解压到某一个文件中
- find +某一路径下 ±name + ”*as?df” //查找符合某一要求的文件,*代表任意数量的字符,?代表一个任意字符。与-exec 连用可以将两个命令连起来,比如 find /urs -name “*tim” -exec cp {} 5555 ; 表示找到所有符合要求的文件并且复制到5555文件夹中。±type d/f 查找文件(夹)类型的文件。
- wc -l 文件 //计数文件的行数
- “ >>” 重定向到某个文件当中
- lsof -i:port 或者(netstat -tunlp | grep port)查看端口使用情况
- 查看各个端口的使用情况: netstat -tunlp
- ps aux | grep python 查看uwsgi进程使用情况
- Kill -9 进程id 强制杀死进程
- Ubuntu 卸载程序:sudo apt-get --purse remove xxxxxxx
- 后端运行python程序nohup python3 -u main.py > nohup.out 2>&1 &,将输出和异常信息保存在nohup.out中
- 显卡使用情况(N卡):nvidia-smi
- 实时查看显卡的情况: watch -n 0.5 nvidia-smi 其中 0.5 是每隔0.5秒查看一次
- GPU并行计算:python3 -m torch.distributed.launch --nproc_per_node=2 --master_port=$RANDOM main.py
- unzip 当前所有的zip文件,unzip ‘*.zip’ (注意带有单引号);unzip -O gb18030 解压,防止中午乱码
- ps aux | head -1;ps aux |grep -v PID |sort -rn -k +4 | head -20 前二十占用内存最高的进程。
- ps -u huangjianbao | grep gunicorn。显示huangjianbao用户下,gunicorn进程的情况
- ps -ef | grep defunct | more。查看僵尸进程id以及父进程id
- free -m 按M查看内存占用情况
- df -h 查看硬盘使用情况
- zip -r chashan_test_224_img_output.zip chashan_test_224_img_output 压缩命令, zip -r archivename.zip directory_name1 directory_name2 file1 file1
- df -h 查看空间使用情况
- nslookup www.baidu.com 解析网址的ip地址
- cat /dev/null > log_path 清空某一个文件的内容
- du -h 文件夹路径:查看文件夹大小
其他
- neo4j启动: neo4j.bat console
Vim
- 翻页: 向下翻页ctrl + f ; ctrl + b 向下翻页
- 撤销上一步编辑: u
- 删除一行: d
- 保存退出 : wq;不保存退出: q! ;退出:q
- 跳转到某一行(比如第六行):6gg
- 搜索某一个字符串(比如搜索string): /string,如果你要继续查找此关键字,敲字符 n 就可以继续查找了,大写N则向前搜索,参考链接:https://bbs.huaweicloud.com/blogs/326218
- 显示每一行的行数::set number 或者 :set nu
- 注释:https://blog.csdn.net/xiajun07061225/article/details/8488210,开始注释::起始行号,结束行号s/^/注释符/g ,取消注释::起始行号,结束行号s/^注释符//g ,注意为了避免**//冲突,如果需要添加注释符号//的时候采用:起始行号,结束行号s#^#注释符#g**,取消注释类似。
- 跳到行末:$, 跳到行首:^
docker
- 使用官方安装脚本自动安装
安装命令如下:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
也可以使用国内 daocloud 一键安装命令:
curl -sSL https://get.daocloud.io/docker | sh - 在当前目录下执行 docker build --no-cache -f ./Dockerfile_name -t 镜像名 . 命令建立镜像
- 使用docker images命令查看生成的镜像
- 运行某一个镜像,生成容器 docker run -t -i --name 容器名 --rm 镜像名 /bin/bash (添加–rm参数,则容器终止后会立刻删除)
- 使用docker ps -a 查看最近构建的容器
- 使用docker rm 容器ID 删除该容器
- 使用docker rmi -f 镜像的ID 删除该镜像(-f 强制删除)
- 将本地数据挂载在docker中,能实现数据同步,docker run -it --name 容器名 -v /宿主机绝对路径目录:/容器内目录 镜像名,例如:docker run -it --name test01 -v /home/students/hjb/5555:/workplace hjb_image;使用相应的GPU:docker run --gpus device=2 -it --name test01 -v /home/sager/hjb/5555:/workplace hjb_image
- 使用-p来做端口映射,-p 宿主机:容器 docker run --gpus device=0 -it --name base_env -v E:/WorkSpace/Python项目/模型实践/HeartbeatSignal:/workspace -p 8080:22 ufoym/deepo
- 退出镜像: exit (这种方法退出会杀死容器),Ctrl+P+Q (这种方法不会杀死容器,保留容器)
- docker cp 路径 容器:路径 复制文件到容器中,例如:docker cp OCR xx1:/workspace
- docker attach 容器名字或者容器ID 进入某个活着的容器
- docker start 容器名字或者容器ID如果这个容器被杀死了,可以通过这个命令让他复活
- docker commit 容器ID 镜像name 将容器生成为镜像
- docker login IP 登录某docker仓库
- docker logout IP 退出登录某docker仓库
- docker tag 本地镜像 IP/项目名:version 重命名,将镜像push前需要重命名
- docker push IP/项目名:version 上传该镜像到docker仓库
- docker save -o my_jenkins.tar jenkins:1.0 这里的jenkins:1.0是你刚打包的镜像, 保存镜像
- docker load --input my_jenkins.tar 导入镜像
- docker exec -d hjb_sku02 sh run.sh 后端挂起执行sh
- docker exec -i -t mynginx /bin/bash 进入容器中,进行操作
- 容器乱码:
export LANG="C.UTF-8"
export LANGUAGE="C.UTF-8"
export LC_ALL="C.UTF-8"
PIP
- pipreqs --use-local --encoding=utf8 --force . 生成requirement.txt文件
- pip install -r requirements.txt 载入
- pip install opencv-python-headless linux opencv
Git
- git config --global --unset http.proxy 和 git config --global --unset https.proxy 取消代理
- echo “# 555” >> README.md
- git init
- git add README.md
- git commit -m “first commit”
- git branch -M main
- git remote add origin https://github.com/Bill845514379/555.git
- git push -u origin main
- git fetch 将远程的仓库同步到本地
- git merge A 将A与当前分支合并
- git pull 等价于 git fetch + git merge
- git checkout master切换分支
- git rebase (另外一种合并的方式,与merge的区别在于,修改记录为线性的记录)
Conda
- 创建新环境 conda create -n flask_env python=3.7
- 激活环境 conda activate env
- 删除环境 conda remove -n 虚拟环境的名称 --all
- conda-env list 显示所有的虚拟环境
Python
- 切换python版本 :https://blog.csdn.net/JIEJINQUANIL/article/details/107007329
- python3.8 linux安装: https://juejin.cn/s/linux%E4%B8%8B%E5%AE%89%E8%A3%85python3.8