一些ubuntu命令记录(持续补充)
一、查看代码运行占用的内存
1、使用 top
命令
top
命令是一个实时的系统监控工具,可以显示当前系统中所有进程的资源使用情况。运行以下命令:
top
在 top
界面中,可以看到每个进程的内存使用情况(%MEM
列)。
如何确定哪个进程是你运行的
要确定哪个进程是你运行的脚本,可以使用以下方法:
使用 ps
命令
运行 ps
命令并结合 grep
来过滤出 Python 进程:
ps aux | grep python
这将列出所有包含 python
的进程。你可以通过以下列来识别你的脚本:
USER:运行进程的用户。
COMMAND:运行的命令及其参数。
虚拟内存和物理内存的解释
虚拟内存 (VIRT)
虚拟内存(Virtual Memory)是指进程可以访问的内存总量,包括:
物理内存:实际分配给进程的物理内存。
交换空间:在磁盘上分配的虚拟内存,用于扩展物理内存。
共享内存:多个进程共享的内存区域。
映射文件:通过内存映射文件(如共享库)分配的内存。
虚拟内存的大小通常比实际使用的物理内存大,因为它包括了所有可能的内存分配,而不仅仅是当前使用的部分。
物理内存 (RES)
物理内存(Resident Set Size, RSS)是指进程实际占用的物理内存量。这是进程当前使用的物理内存量,不包括交换空间或未使用的虚拟内存。
二、创建/激活/退出/删除虚拟环境
创建虚拟环境
使用 venv
模块
venv
是 Python 3.3+ 自带的虚拟环境工具。运行以下命令来创建一个虚拟环境:
python3 -m venv myenv
这将在当前目录下创建一个名为 myenv
的文件夹,其中包含虚拟环境的所有文件。
使用 conda
创建虚拟环境
如果使用的是 Anaconda 或 Miniconda,可以使用 conda
创建虚拟环境:
conda create -n myenv python=3.8
这将创建一个名为 myenv
的虚拟环境,并安装 Python 3.8。
激活虚拟环境
激活 venv
虚拟环境
在 Linux 或 macOS 上:
source myenv/bin/activate
在 Windows 上:
myenv\Scripts\activate
激活 conda
虚拟环境
conda activate myenv
退出虚拟环境
退出 venv
虚拟环境
在 Linux、macOS 或 Windows 上:
deactivate
退出 conda
虚拟环境
conda deactivate
删除虚拟环境
删除 venv
虚拟环境
删除虚拟环境的文件夹即可:
rm -rf myenv
删除 conda
虚拟环境
conda env remove -n myenv
三、查内存
1、查看 系统内存(RAM)和交换空间(swap)使用情况,并用 人类可读的单位(如 MB、GB)显示。
free -h
free # 查看内存使用情况
-h # human readable,以 KB、MB、GB 为单位显示示例输出解释:
$ free -h total used free shared buff/cache available Mem: 15Gi 7.2Gi 2.1Gi 1.1Gi 5.7Gi 6.9Gi Swap: 2.0Gi 0.0Gi 2.0Gi
字段说明:
字段 说明 total 总物理内存(或 Swap 空间) used 已使用内存(不包括缓存和缓冲区) free 未被使用的内存 shared 多个进程共享的内存 buff/cache 被用作缓存或缓冲区的内存(Linux 会利用空闲内存做缓存以加快访问) available 实际可用内存(考虑缓存可以释放的部分)
2、列出当前目录内容,按文件大小从小到大排列,显示详细信息
ls -lSr
3、查看 磁盘空间使用情况,并以人类可读的格式(如 GB、MB)显示各个分区的总容量、已用空间、可用空间及挂载点。
df -h
4、以长格式(long format)列出当前目录或指定目录下的文件和子目录的详细信息。
ls -l
命令含义
ls
:列出目录中的文件和文件夹名。
-l
:long listing format,显示详细信息。
输出字段说明
执行
ls -l
后,通常会看到类似这样的输出:
-rw-r--r-- 1 user group 4096 Jun 22 10:00 example.txt drwxr-xr-x 2 user group 4096 Jun 22 09:50 myfolder
列序 字段 说明 1 文件类型和权限 例如 -rw-r--r--
,第1位是类型(-
普通文件,d
目录等),后面9位是权限2 硬链接数 指向该文件的硬链接数量 3 文件所有者 拥有该文件的用户名 4 文件所属用户组 文件所属的用户组名 5 文件大小(字节) 文件大小,单位是字节 6-8 最后修改时间 月 日 时分(有时是年月日,视文件时间远近) 9 文件名 文件或目录的名字 例子
drwxr-xr-x 2 huang huang 4096 Jun 22 12:30 Documents -rw-r--r-- 1 huang huang 12345 Jun 21 18:00 notes.txt
第一行是目录
Documents
,权限是所有者读写执行,组和其他人只读执行。第二行是普通文件
notes.txt
,大小12345字节。
其他:
-
ls -lh
:以人类可读格式显示文件大小(例如 KB、MB)。 -
ls -la
:显示包括隐藏文件(以.
开头)的所有文件。