首页 > 其他分享 >OS用法

OS用法

时间:2023-08-26 12:55:30浏览次数:26  
标签:python os 用法 import print path OS dir

在Python中,os模块提供了许多与操作系统交互的功能。以下是一些常用的os模块用法:

 

1. 获取当前工作目录:

 

```python

import os

 

current_dir = os.getcwd()

print("当前工作目录:", current_dir)

```

 

2. 改变当前工作目录:

 

```python

import os

 

new_dir = "/path/to/new/directory"

os.chdir(new_dir)

print("新的工作目录:", os.getcwd())

```

 

3. 列出指定目录下的所有文件和文件夹:

 

```python

import os

 

dir_path = "/path/to/directory"

files_and_folders = os.listdir(dir_path)

print("目录下的文件和文件夹:", files_and_folders)

```

 

4. 创建新目录:

 

```python

import os

 

new_dir = "/path/to/new/directory"

os.makedirs(new_dir)

print("新创建的目录:", new_dir)

```

 

5. 删除文件:

 

```python

import os

 

file_path = "/path/to/file"

os.remove(file_path)

print("已删除文件:", file_path)

```

 

6. 重命名文件或目录:

 

```python

import os

 

old_name = "/path/to/old_name"

new_name = "/path/to/new_name"

os.rename(old_name, new_name)

print("已重命名:", old_name, "->", new_name)

```

 

7. 检查文件或目录是否存在:

 

```python

import os

 

file_path = "/path/to/file_or_directory"

exists = os.path.exists(file_path)

print("文件或目录是否存在:", exists)

```

 

8. 获取文件或目录的大小:

 

```python

import os

 

file_path = "/path/to/file_or_directory"

size = os.path.getsize(file_path)

print("文件或目录大小:", size, "字节")

```

 

9. 关闭文件:

 

```python

import os

 

file_path = "/path/to/file"

os.close(file_path)

print("已关闭文件:", file_path)

```

 

10. 获取环境变量:

 

```python

import os

 

env_var = os.environ.get("ENV_VAR_NAME")

print("环境变量值:", env_var)

```

11. 获取当前工作目录的绝对路径:

 

```python

import os

 

abs_path = os.path.abspath(os.getcwd())

print("当前工作目录的绝对路径:", abs_path)

```

 

12. 创建符号链接:

 

```python

import os

 

source = "/path/to/source"

target = "/path/to/target"

os.symlink(source, target)

print("已创建符号链接:", source, "->", target)

```

 

13. 遍历目录:

 

```python

import os

 

dir_path = "/path/to/directory"

for root, dirs, files in os.walk(dir_path):

    print("当前目录:", root)

    print("子目录:", dirs)

    print("文件:", files)

```

 

14. 运行系统命令:

 

```python

import os

 

command = "ls -l"

os.system(command)

```

 

15. 修改文件或目录的权限:

 

```python

import os

 

file_path = "/path/to/file_or_directory"

permissions = os.stat(file_path).st_mode

os.chmod(file_path, permissions | 0o755)

print("已修改权限:", file_path)

```

 

16. 等待用户输入:

 

```python

import os

 

input("按任意键继续...")

```

 

17. 获取进程ID:

 

```python

import os

 

pid = os.getpid()

print("进程ID:", pid)

```

 

18. 生成唯一标识符:

 

```python

import os

 

import uuid

 

unique_id = str(uuid.uuid4())

print("唯一标识符:", unique_id)

```

 

19. 挂载磁盘分区:

 

```python

import os

 

mount_point = "/path/to/mount_point"

os.makedirs(mount_point, exist_ok=True)

os.system("mount /dev/sdXN /path/to/mount_point")

print("已挂载磁盘分区:", mount_point)

```

 

20. 卸载磁盘分区:

 

```python

import os

 

unmount_point = "/path/to/unmount_point"

os.system("umount /path/to/unmount_point")

print("已卸载磁盘分区:", unmount_point)

```

21. 获取当前系统的信息:

 

```python

import os

 

system_info = os.uname()

print("当前系统信息:", system_info)

```

 

22. 修改文件或目录的所有者和所属组:

 

```python

import os

 

file_path = "/path/to/file_or_directory"

owner = "new_owner"

group = "new_group"

os.chown(file_path, owner, group)

print("已修改所有者和所属组:", file_path)

```

 

23. 在指定目录下创建符号链接,并指向原文件:

 

```python

import os

 

source = "/path/to/source"

target = "/path/to/target"

link_name = "/path/to/link"

os.symlink(source, link_name)

os.symlink(link_name, target)

print("已创建指向原文件的符号链接:", link_name)

```

 

24. 检查文件是否被其他进程占用:

 

```python

import os

 

file_path = "/path/to/file"

is_locked = os.path.isfile(file_path + ".lock")

print("文件是否被占用:", is_locked)

```

 

25. 在指定目录下查找文件:

 

```python

import os

 

dir_path = "/path/to/directory"

search_term = "search_term"

found_files = [f for f in os.listdir(dir_path) if search_term in f]

print("找到的文件:", found_files)

```

 

26. 在指定目录下查找文件,并返回其绝对路径:

 

```python

import os

 

dir_path = "/path/to/directory"

search_term = "search_term"

found_files = [os.path.join(dir_path, f) for f in os.listdir(dir_path) if search_term in f]

print("找到的文件(绝对路径):", found_files)

```

 

27. 在指定目录下查找文件,并返回其相对路径:

 

```python

import os

 

dir_path = "/path/to/directory"

search_term = "search_term"

found_files = [os.path.join(dir_path, f) for f in os.listdir(dir_path) if search_term in f and not os.path.isabs(f)]

print("找到的文件(相对路径):", found_files)

```

 

28. 在指定目录下查找文件,并返回其完整路径:

 

```python

import os

 

dir_path = "/path/to/directory"

search_term = "search_term"

found_files = [os.path.join(dir_path, f) for f in os.listdir(dir_path) if search_term in f and os.path.isabs(f)]

print("找到的文件(完整路径):", found_files)

```

29. 在指定目录下查找目录,并返回其绝对路径:

 

```python

import os

 

dir_path = "/path/to/directory"

search_term = "search_term"

found_dirs = [os.path.join(dir_path, d) for d in os.listdir(dir_path) if search_term in d and os.path.isdir(os.path.join(dir_path, d))]

print("找到的目录(绝对路径):", found_dirs)

```

 

30. 在指定目录下查找目录,并返回其相对路径:

 

```python

import os

 

dir_path = "/path/to/directory"

search_term = "search_term"

found_dirs = [os.path.join(dir_path, d) for d in os.listdir(dir_path) if search_term in d and os.path.isdir(os.path.join(dir_path, d)) and not os.path.isabs(os.path.join(dir_path, d))]

print("找到的目录(相对路径):", found_dirs)

```

 

31. 在指定目录下查找目录,并返回其完整路径:

 

```python

import os

 

dir_path = "/path/to/directory"

search_term = "search_term"

found_dirs = [os.path.join(dir_path, d) for d in os.listdir(dir_path) if search_term in d and os.path.isdir(os.path.join(dir_path, d)) and os.path.isabs(os.path.join(dir_path, d))]

print("找到的目录(完整路径):", found_dirs)

```

 

以上是os模块的一些其他功能,你可以根据需要进行组合和调整。

 

 

以上是os模块的一些其他功能,你可以根据需要进行组合和调整。

 

 

以上是os模块的一些常用功能,你可以根据需要进行组合和调整。

 

标签:python,os,用法,import,print,path,OS,dir
From: https://www.cnblogs.com/full-stack-linux-new/p/17658663.html

相关文章

  • volatility用法
    以下的【Win7SP1x64】皆为操作系统名称 获取内存操作系统volatility-f文件名imageinfo 内存网络扫描–profile参数指定镜像volatility-f文件名--profile=Win7SP1x64netscan读取cmd命令volatility-f文件名--profile=Win7SP1x64amdscan 列举内存进程......
  • Redis——急速安装并设置自启(CentOS)
    现状对于开发人员来说,部署服务器环境并不是一个高频操作。所以就导致绝大部分开发人员不会花太多时间去学习记忆,而是直接百度(有一些同学可能连链接都懒得收藏)。所以到了部署环境的时候就头疼,甚至是抗拒。除了每次都要折腾个把小时(甚至更久)以外,还会觉得:我是开发不是运维,为什么要搞这......
  • ssh连华为云的linux服务器报 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
    谜底啊,就藏在谜面上└─#sshuname@ip-p22@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@WARNING:REMOTEHOSTIDENTIFICATIONHASCHANGED!@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ITISPOSSIBLETHATSOMEONEISDOIN......
  • Airtest新增iOS、Windows录屏功能,真香!
    1.前言在录屏这块,Airtest之前一直仅支持了Android设备,但Airtest1.2.9的新版录屏功能里,新增了iOS和Windows的录屏支持。下文我们将详细了解这个新的录屏功能,以及实操下在iOS设备或者Windows端的录屏操作。2.Airtest录屏功能介绍熟悉Airtest的同学都知道,我们可以用 start_rec......
  • openeuler linux内核4.19安装(centos 同理)
    linux内核安装:安装内核步骤下载相应内核版本【我这里用的是linux-4.19.90.tar.gz】下载网址:https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/解压缩到自定位置【我这里是/root/桌面/send/】安装内核图像界面依赖【已安装则跳过】 yuminstallncurses-deve......
  • Allure用法
    查看官网:https://docs.qameta.io/allure/#_junit_5源码example:https://github.com/allure-examples/allure-examples/tree/master/allure-junit5/src/test/java/io/qameta/allure/examples/junit5  添加描述信息packagecom.allure;importio.qameta.allure.Allure;......
  • osg 使用整理 (6):体渲染效果
    osg使用整理(6):体渲染效果​ ​ 体渲染技术可用于医学成像、计算流体力学、有限元、地球物理学、遥感等领域,数据通常来源于CT扫描、核磁共振MRI、卫星成像和声纳等设备,大概分为三种:直接体渲染技术(光线投射法、抛雪球法、错切变形法)、间接体绘制技术和最大密度投影技术。1光线......
  • 图像处理 Adobe Camera Raw v15.2 for Windows x64 v14.5 for macOS
    AdobeCameraRaw允许您导入和增强原始格式图像,自从2003年发布以来就成为专业摄影师的必备工具。支持AdobeCameraRaw的应用程序包括Photoshop、PhotoshopElements、AfterEffects和Bridge。此外,AdobeLightroom采用了与AdobeCameraRaw相同的强大的原始格式图像处理......
  • axios.js的使用方法
    axios是一个基于Promise的HTTP客户端,可以用于浏览器和Node.js中。以下是axios的基本使用方法: 1.安装axios模块: ```npminstallaxios``` 2.引入axios模块: ```javascriptconstaxios=require('axios');``` 3.发送GET请求: ```javascriptaxios.get('/api......
  • Acrobat增效工具Quite Imposing Plus下载及安装激活教程
    QuiteImposingPlus增效工具是AdobeAcrobatPDF最常用的拼版排版编辑插件。该插件具备体积小,兼容性好,简单易懂门槛低的优点。QuiteImposingPlus可以用来复制页面、删除页面、移动页面、调整页面大小、书册拼版,足以应付办公PDF页面编辑和书册排版的需求。2023版AdobeAcr......