Python 环境安装与 Linux 控制入门

这篇文章主要讲三件事:

  1. Python 环境怎么安装
  2. Python 里几个常用命令怎么理解
  3. Python 控制 Linux 时常用哪些库,它们分别有什么用

我会尽量用 Java 程序员容易理解的方式来讲。


一、Python 环境怎么安装

在 Ubuntu 22.04 里,Python 3 通常已经有了,但 pip3venv 不一定都装好。

1. 检查 Python 是否已安装

bash 复制代码
python3 --version

如果能看到版本号,说明 Python 3 已经可用。

2. 检查 pip 是否已安装

bash 复制代码
pip3 --version

如果没有这个命令,也可以这样看:

bash 复制代码
python3 -m pip --version

3. 安装 Python 基础环境

bash 复制代码
apt update
apt install -y python3 python3-pip python3-venv

安装完后再检查:

bash 复制代码
python3 --version
python3 -m pip --version

二、Python 里几个常用命令,Java 程序员怎么理解

1. python3

bash 复制代码
python3 app.py

这个命令的作用是运行 Python 程序。

你可以把它理解成 Java 里的:

bash 复制代码
java -jar app.jar

或者更简单地理解成:

  • python3 = 运行 Python 代码的入口
  • 类似 Java 的 java

2. pip3

bash 复制代码
pip3 install requests

pip3 是 Python 的包管理工具,用来安装第三方库。

可以理解成 Java 里的:

  • mvn
  • gradle

它的作用是"装依赖"。

3. python3 -m pip

bash 复制代码
python3 -m pip install requests

这也是安装包,只是更稳一点。

它可以理解成:

  • 通过 Python 自己去调用 pip
  • 比单独用 pip3 更通用

4. venv

bash 复制代码
python3 -m venv venv
source venv/bin/activate

venv 是 Python 的虚拟环境工具。

它的作用是给每个项目单独隔离依赖,避免互相污染。

Java 程序员可以把它理解成:

  • 不是 JDK 切换
  • 更像每个项目有自己的独立依赖空间

三、Python 控制 Linux 常用哪些库

如果你想让 Python 去"控制 Linux",通常不只是看系统信息,还会执行命令、管理文件、处理路径、记录日志。

下面是几个常用库。

1. os

os 是 Python 里最基础的操作系统接口库。

常见用途:

  • 读环境变量
  • 处理文件路径
  • 删除、重命名文件
  • 获取当前工作目录
简单例子
python 复制代码
import os

print(os.getcwd())

这会输出当前目录。

Java 程序员可以理解成:

  • 类似系统工具类
  • 负责跟操作系统打交道

2. subprocess

subprocess 是最重要的一个库之一。

它可以让 Python 执行 Linux 命令。

简单例子
python 复制代码
import subprocess

subprocess.run(["ls", "-l"])

意思是:让 Python 去执行 ls -l

再举一个例子
python 复制代码
import subprocess

subprocess.run(["systemctl", "restart", "nginx"])

意思是:让 Python 去重启 nginx 服务。

注意:如果这里执行的是需要 root 权限的命令,脚本本身也要以 root 身份运行,或者明确使用 sudo,否则会因为权限不足而失败。

Java 程序员可以把它理解成:

  • 类似 Runtime.exec()
  • 或者 ProcessBuilder

如果说 Python 真要"控制 Linux",这个库很关键。


3. psutil

psutil 主要是系统监控库。

它能做这些事:

  • 查看 CPU 使用率
  • 查看内存
  • 查看磁盘
  • 查看进程
  • 查看网络状态
  • 查看系统运行时间

psutil 不是 Python 标准库,需要单独安装:

bash 复制代码
pip3 install psutil
简单例子
python 复制代码
import psutil

print(psutil.cpu_percent(interval=1))
print(psutil.virtual_memory())

这会输出 CPU 和内存信息。

Java 程序员可以理解成:

  • 系统监控工具
  • 不是执行命令的核心库
  • 更像"读取系统状态"的工具包

4. datetime

datetime 主要用于时间处理。

常见用途:

  • 获取当前时间
  • 格式化时间
  • 计算时间差
简单例子
python 复制代码
import datetime

print(datetime.datetime.now())

意思是:打印当前时间。

Java 程序员可以理解成:

  • 类似 java.time 相关工具

它本身不控制 Linux,但做运维脚本时经常要用。


5. pathlib

pathlib 是更现代的路径处理库。

简单例子
python 复制代码
from pathlib import Path

p = Path("/tmp/test.txt")
print(p.exists())

意思是:判断文件是否存在。

Java 程序员可以理解成:

  • 比较像 Path 相关的概念
  • 比手写字符串路径更舒服

6. shutil

shutil 主要用来做文件复制、移动、删除等操作。

简单例子
python 复制代码
import shutil

shutil.copy("a.txt", "b.txt")

意思是:把 a.txt 复制成 b.txt

Java 程序员可以理解成:

  • 文件工具类
  • 适合做运维里的文件搬运和备份

7. logging

logging 用来记录日志。

简单例子
python 复制代码
import logging

logging.basicConfig(level=logging.INFO)
logging.info("start")

意思是:记录一条日志。

运维脚本里最好不要只会 print(),还要会写日志。

Java 程序员可以理解成:

  • 类似 logbackslf4j 这种日志能力

四、Python 控制 Linux 时,这些库分别干什么

可以简单分成三类:

1. 看系统状态

  • psutil
  • datetime

用途:

  • 看 CPU
  • 看内存
  • 看磁盘
  • 看进程
  • 看运行时间

2. 执行系统动作

  • subprocess
  • os
  • shutil

用途:

  • 执行命令
  • 管理文件
  • 调用系统工具
  • 做复制、移动、删除

3. 辅助运维脚本

  • pathlib
  • logging

用途:

  • 处理路径
  • 记录日志
  • 提高脚本可维护性

五、一个最简单的 Python + Linux 例子

下面这个脚本会做两件事:

  1. 查看当前目录
  2. 打印 CPU 使用率
python 复制代码
import os
import psutil

print("当前目录:", os.getcwd())
print("CPU 使用率:", psutil.cpu_percent(interval=1))

这个例子很适合入门理解:

  • os 负责拿系统路径
  • psutil 负责拿系统状态

六、Java 程序员可以怎么记

可以直接这样记:

Python 作用 Java 类比
python3 运行 Python 代码 java
pip3 安装 Python 包 mvn / gradle
venv 项目依赖隔离 项目独立依赖环境
os 操作系统接口 系统工具类
subprocess 执行 Linux 命令 Runtime.exec() / ProcessBuilder
psutil 系统监控 监控工具包
datetime 时间处理 java.time
pathlib 路径处理 Path
shutil 文件复制移动 文件工具类
logging 日志记录 slf4j / logback

七、最简单的结论

如果你是 Java 程序员,可以先这么理解:

  • python3 是跑程序的
  • pip3 是装依赖的
  • venv 是给项目隔离环境的
  • ospathlibshutil 是处理文件和系统的
  • subprocess 是让 Python 控制 Linux 命令的关键
  • psutil 是看系统状态的
  • logging 是记录脚本日志的

如果你想用 Python 做 Linux 自动化运维,最先掌握的就是:

text 复制代码
python3 + pip3 + venv + os + subprocess + psutil
相关推荐
三万棵雪松2 小时前
【Linux 物联网网关主控系统-Linux主控部分(二)】
linux·嵌入式linux
wefly20172 小时前
纯前端架构深度解析:jsontop.cn,JSON 格式化与全栈开发效率平台
java·前端·python·架构·正则表达式·json·php
chinesegf2 小时前
ubuntu建虚拟环境制作docker容器
linux·ubuntu·docker
551只玄猫2 小时前
【数学建模 matlab 实验报告1】
开发语言·数学建模·matlab·课程设计·实验报告
Stack Overflow?Tan902 小时前
标注软件labelImg在linux下鼠标滚轮闪退解决办法
linux·labelimg
李彦亮老师(本人)2 小时前
Rocky Linux 9.x 新特性详解
linux·运维·服务器·centos·rocky linux
NiKick2 小时前
在Linux系统上使用nmcli命令配置各种网络(有线、无线、vlan、vxlan、路由、网桥等)
linux·服务器·网络
胡耀超3 小时前
Token的八副面孔:为什么“词元“不需要更好的翻译,而需要更多的读者
大数据·人工智能·python·agent·token·代币·词元
三道渊3 小时前
C语言:文件I/O
c语言·开发语言·数据结构·c++
hnlgzb3 小时前
安卓app kotlin语法,Hilt是什么东西?
android·开发语言·kotlin