【基础工具】Linux指令集

Last updated on June 12, 2024 pm

Linux命令集

查看当前路径的位置 pwd

查看命令历史

终端中输入

1
history

指定查找关键字

通过增加grep来增加关键字的筛选

1
| grep GOPROXY

当前目录下的文件

  • 当前目录下的文件 ls
  • ls -l;ls-h;都是用来显示文件的详细信息
  • ls -a 来显示所有的文件(包含隐藏文件)
  • 组合使用 ls -lha 显示所有并包含的隐藏文件且显示详细信息
  • 使用dir显示当前文件夹下的文件名*

切换文件夹

  • cd .. #返回父级目录

  • cd 切换到当前用户的主目录(/home/用户目录)
    cd ~ 切换到当前用户的主目录(/home/用户目录)
    cd . 保持在当前目录不变
    cd … 切换到上级目录
    cd - 可以在最近两次工作目录之间来回切换
  • 相对路径 在输入路径时,最前面不是 / 或者 ~,表示相对 当前目录 所在的目录位置 绝对路径 在输入路径时,最前面是 / 或者 ~,表示从 根目录/家目录 开始的具体目录位置

移动文件到指定位置 mv

  • mv 文件名 指定的路径位置 -i 用于提示

  • 修改文件夹名称:mv 原来的文件夹名称 后来的文件夹名称

  • 拷贝某个文件夹到指定路径
    • cp 当前文件夹下某个文件名(带后缀) 目标路径 -i 用于提示

      命令 对应英文 作用
      01 tree [目录名] tree 以树状图列出文件目录结构
      02 cp 源文件目标文件 copy 复制文件或者目录
      03 mv 源文件 目标文件 move 移动文件或者目录/文件或者目录重命名

创建文件夹

  • 进入路径的位置 mkdir 需要创建的文件夹的名称
  • 递归创建文件夹 mkdir -p 123/456 在123文件夹下递归创建文件夹456

新建某个文件

1
touch 123.txt

删除文件夹

  • rmdir+ 需要删除的文件名

删除某个文件

  • 使用rm来对文件进行删除 -i 进行删除前的查询

  • 选项 含义
    -f 强制删除,忽略不存在的文件,无需提示
    -r 递归地删除目录下的内容,删除文件夹 时必须加此参数

解压缩文件的指令

  • 对于ZIP文件的操作
    • 解压操作:进入需要解压的文件的位置:unzip filename.zip
    • 压缩文件:同理进入需要解压的文件夹的上一级 zip filename.zip

远程连接服务器配置免密

https://zhuanlan.zhihu.com/p/350160634

本质上就是在本地的计算机上创建自己的私钥公钥,然后在服务器的.ssh文件夹中产生一个authorized_keys文件,再将本地的公钥复制进去即可

Linux中查看系统使用情况

  • Top 来显示CPU的占用情况:

    PID 进程的ID USER 进程所有者
    PR 进程的优先级别,越小越优先被执行 NInice
    VIRT 进程占用的虚拟内存 RES 进程占用的物理内存
    SHR 进程使用的共享内存 S 进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数
    %CPU 进程占用CPU的使用率 %MEM 进程使用的物理内存和总内存的百分比
    TIME+ 该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值 COMMAND 进程启动命令名称
  • top退出方式是==用q进行退出==

  • free查看内存的使用情况

    total 总计物理内存的大小 used 已使用多大
    free 可用有多少 Shared 多个进程共享的内存总额
    Buffers/cached 磁盘缓存的大小
  • vmstat指令也是用于查看内存的使用

    • Procs(进程): r: 运行队列中进程数量,这个值也可以判断是否需要增加CPU。(长期大于1) b: 等待IO的进程数量

    • Memory(内存):swpd: 使用虚拟内存大小;free: 空闲物理内存大小;buff: 用作缓冲的内存大小;cache: 用作缓存的内存大小

    • Swap: si: 每秒从交换区写到内存的大小,由磁盘调入内存;so: 每秒写入交换区的内存大小,由内存调入磁盘

    • IO:bi: 每秒读取的块数,bo: 每秒写入的块数

    • 系统: in: 每秒中断数,包括时钟中断。 cs: 每秒上下文切换数。

    • CPU(以百分比表示):us: 用户进程执行时间百分比(user time) sy: 内核系统进程执行时间百分比(system time) ;wa: IO等待时间百分比; id: 空闲时间百分比

查看系统的GPU

实时查看GPU使用情况

1
watch -n 1 nvidia-smi 

行代码的意思是只选择指定标号GPU进行使用,执行完该行代码之后python环境无法检测到指定GPU之外的其他

查看正在运行的程序

ps -ef | grep python

https://blog.csdn.net/weixin_41010198/article/details/122370405

top -bn 1 -i -c

安装Nvidia驱动

查看已经安装的nvdia驱动版本:ls /usr/src | grep nvidia

https://blog.csdn.net/sinat_34686158/article/details/106845208

查看显卡型号

1
2
lspci | grep -i nvidia
lspci -vnn | grep VGA

安装之前先卸载之前的旧版本

1
2
3
4
5
6
#之前通过ppa安装的,卸载如下
sudo apt-get remove --purge nvidia*

#以前是通过runfile安装的,卸载如下:
sudo ./NVIDIA-Linux-x86_64-384.59.run --uninstall

首先,检测你的NVIDIA显卡型号和推荐的驱动程序的模型。

1
ubuntu-drivers devices

自动安装

1
sudo ubuntu-drivers autoinstall

最后重启系统 https://blog.csdn.net/u012964600/article/details/136968000

1
sudo reboot

系统环境变量

对于MACOS,用VIM进入

1
vim ~/.zshrc

添加环境变量的语句是,这里以增加路径为例子

1
export GOPATH="user/workspace/golang"

添加完环境变量之后,激活一下设置

1
source ~/.zshrc

同样对于Linux系统而言也是相同的步骤

1
vim ~/.bashrc

添加完成之后最后激活一下设定

1
source ~/.bashrc

如果想直接查看当前某个环境变量的设置的值可以用以下的命令进行查看

1
echo $GOPARH

输出的值是当前的这个环境变量设置的值,比如会输出:user/workspace/golang

显示Linux系统的其他信息

时间和日期
序号 命令 作用
01 date 查看系统时间
02 cal calendar 查看日历, -y 选项可以查看一年的日历
磁盘信息
序号 命令 作用
01 df -h disk free 显示磁盘剩余空间
02 du -h [目录名] disk usage 显示目录下的文件大小
进程信息

​ 所谓进程,通俗地说就是 当前正在执行的一个程序

序号 命令 作用
01 ps aux process status 查看进程的详细状况
02 top 动态显示运行中的进程并且排序
03 kill [-9] 进程代号 终止指定代号的进程, -9 表示强行终止

网络测试

​ ping 一般用于检测当前计算机到目标计算机之间的网络 是否通畅,数值越大,速度越慢

1
2
3
4
# 检测到目标主机是否连接正常
$ ping IP地址 www.baidu.com
# 检测本地网卡工作正常
$ ping 127.0.0.1

GPU运行指定

  1. 首先先查看对应的GPU内存:nvidia-smi

  2. 然后在终端输出代码:

    1
    CUDA_VISIBLE_DEVICES=1 python your_model.py 

    再或者使用 **torch.cuda.set_device()**函数指定gpu使用编号:

    1
    2
    import torch
    torch.cuda.set_device(2) # 使用2号GPU

【基础工具】Linux指令集
https://lihaibineric.github.io/2023/11/25/tool_linux/
Author
Haibin Li
Posted on
November 25, 2023
Updated on
June 12, 2024
Licensed under