Linux 基础知识

1. 文件目录结构

  • /home:用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。

  • /etc:etcEtcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。

  • /usrusrunix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序文件都放在这个目录下,类似于 windows 下的 program files 目录。

  • /binbinBinaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。

  • /optoptoptional(可选) 的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。

  • /varvarvariable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。

  • /procprocProcesses(进程) 的缩写,/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
    这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:

    echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
    
  • /tmptmptemporary(临时) 的缩写这个目录是用来存放一些临时文件的。

2. vim编辑器

vi-vim-cheat-sheet-sch(1)

Vim的三种工作模式:

  • 命令模式
  • 插入模式
  • 底行命令模式

2.1 命令模式和底行模式转为插入模式

功能命令描述使用频率
插入字符i进入插入模式,并从光标所在处输入字符常用
I进入插入模式,并从光标所在行的第一个非空字符处开始输入不常用
a进入插入模式,并从光标所在的下一个字符处输入字符不常用
A进入插入模式,并从光标所在行的最后一个字符处开始输入不常用
新增一行o进入插入模式,并从光标所在行的下一行新增一行常用
O进入插入模式,并从光标所在行的上一行新增一行不常用

2.2 Vim光标的移动

命令描述
w正向移动到下一个单词的开头
b反向移动到下一个单词的开头
f{char}正向移动到下一个{char}字符所在之处
Ctrl+f屏幕向下移动一页,相当于Page Down按键
Ctrl+b屏幕向上移动一页,相当于Page Up按键
Ctrl+d屏幕向下移动半页
Ctrl+u屏幕向上移动半页
+光标移动到非空字符的下一行
-光标移动到非空字符的上一行
0光标移动到所在行最前面的字符
$光标移动到所在行最后面的字符
H移动到屏幕最上方那一行的第一个字符
L移动到屏幕最下方那一行的第一个字符
G移动到文件的最后一行
nGn为数字,表示移动到文件的第n行
gg移动到文件第一行
nEntern为数字,光标向下移动n行

2.3 删除、复制和粘贴

命令描述
x删除光标所在的字符,相当于Del键
X删除光标所在的前一个字符,相当于Backspace键
dd删除光标所在的行
ndd删除光标所在向下n行
yy复制光标所在的行
nyy复制光标所在向下n行
p把已经复制的数据粘贴到光标的下一行
u撤销前一个命令

2.4 查找和替换

命令描述
/<要查找的字符>向下查找
?<要查找的字符>向上查找

2.5 文件相关

命令描述
:q退出Vim
:q!强制退出Vim, 修改过的文件不会被保存
:w保存修改过的文件
:w!强制保存修改过的文件
:qw保存修改过的文件后退出Vim
:qw!强制保存修改过的文件后退出Vim

3. 文件基本属性

在 Linux 中我们可以使用 ll 或者 ls –l 命令来显示一个文件的属性以及文件所属的用户和组,如:

(base) username:~$ ls -l
total 20
drwxrwxr-x  7 username username 4096 59 21:19 clyan
lrwxrwxrwx  1 root     root        6 228 16:52 datasets -> /data3
drwxrwxr-x  2 username username 4096 524 20:18 docker_demo
drwxrwxr-x  2 username username 4096 524 21:24 log_data

实例中,bin 文件的第一个属性用 d 表示。d 在 Linux 中代表该文件是一个目录文件。

在 Linux 中第一个字符代表这个文件是目录、文件或链接文件等等。

  • 当为 d 则是目录
  • 当为 - 则是文件;
  • 若是 l 则表示为链接文档(link file)
  • 若是 b 则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
  • 若是 c 则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。

接下来的字符中,以三个为一组,且均为 rwx 的三个参数的组合。其中, r 代表可读(read)、 w 代表可写(write)、 x 代表可执行(execute)。 要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号 - 而已。

在这里插入图片描述

4. 文件与目录管理

4.1 路径

  • 绝对路径:
    路径的写法,由根目录 / 写起,例如: /usr/share/doc 这个目录。
  • 相对路径:
    路径的写法,不是由 / 写起,例如由 /usr/share/doc 要到 /usr/share/man 底下时,可以写成: cd ../man 这就是相对路径的写法。

4.2 处理目录的常用命令

  • ls(英文全拼:list files): 列出目录及文件名
  • cd(英文全拼:change directory):切换目录
  • pwd(英文全拼:print work directory):显示目前的目录
  • mkdir(英文全拼:make directory):创建一个新的目录
  • rmdir(英文全拼:remove directory):删除一个空的目录
  • cp(英文全拼:copy file): 复制文件或目录
  • rm(英文全拼:remove): 删除文件或目录
  • mv(英文全拼:move file): 移动文件与目录,或修改文件与目录的名称

你可以使用 man [命令] 来查看各个命令的使用文档,如 :man cp

4.3 文件内容查看

  • cat 由第一行开始显示文件内容
  • tac 从最后一行开始显示,可以看出 taccat 的倒着写!
  • nl 显示的时候,顺道输出行号!
  • more 一页一页的显示文件内容
  • lessmore 类似,但是比 more 更好的是,他可以往前翻页!
  • head 只看头几行
  • tail 只看尾巴几行

5. 安装软件

5. 1 yum 语法

yum [options] [command] [package ...]
  • options:可选,选项包括-h(帮助),-y(当安装过程提示选择全部为 “yes”),-q(不显示安装的过程)等等。
  • command:要进行的操作。
  • package:安装的包名。

5.2 yum常用命令

  1. 列出所有可更新的软件清单命令:yum check-update

  2. 更新所有软件命令:yum update

  3. 仅安装指定的软件命令:yum install <package_name>

  4. 仅更新指定的软件命令:yum update <package_name>

  5. 列出所有可安裝的软件清单命令:yum list

  6. 删除软件包命令:yum remove <package_name>

  7. 查找软件包命令:yum search

  8. 清除缓存命令:

    ↺ \circlearrowleft yum clean packages: 清除缓存目录下的软件包
    ↺ \circlearrowleft yum clean headers: 清除缓存目录下的 headers
    ↺ \circlearrowleft yum clean oldheaders: 清除缓存目录下旧的 headers
    ↺ \circlearrowleft yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的 headers

6. 常用命令

6.1 查看cudacudnncpu信息

查看cuda版本
nvcc --version
查看cudnn版本
cat /usr/local/cuda/include/cudnn_version.h
#define CUDNN_MAJOR 8
#define CUDNN_MINOR 0
#define CUDNN_PATCHLEVEL 4
查看cpu信息
cat /proc/cpuinfo
processor	: 63
vendor_id	: GenuineIntel
cpu family	: 6
model		: 85
model name	: Intel(R) Xeon(R) Gold 5218 CPU @ 2.30GHz
stepping	: 7

6.2 查看内存CPUGPU使用情况

查看内存使用情况
free -m
              total        used        free      shared  buff/cache   available
Mem:         385612       72202       25001       12618      288408      298229
Swap:          8191        3542        4649
CPU与内存使用情况
top
top - 11:27:14 up 65 days, 23:53,  7 users,  load average: 9.82, 11.15, 11.44
Tasks: 1137 total,  11 running, 1126 sleeping,   0 stopped,   0 zombie
%Cpu(s): 11.0 us,  6.5 sy,  0.0 ni, 82.2 id,  0.0 wa,  0.0 hi,  0.3 si,  0.0 st
MiB Mem : 385612.9 total,  25146.2 free,  72069.8 used, 288396.8 buff/cache
MiB Swap:   8192.0 total,   4649.8 free,   3542.2 used. 298371.8 avail Mem
查看指定用户进程
top -u user_name
GPU使用情况
nvidia-smi
watch -n 1 nvidia-smi

6.3 结束进程

查看进程
ps -A | grep nautilus
结束进程
kill [PID]

参考资料:

[1] Linux 菜鸟教程

[2] 老姜的数据江湖 Bilibili

[3] Running-LinuxKernel GitHub

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值