import os, sys

# 假定 /tmp/foo.txt 文件存在,并有读写权限

ret = os.access("/tmp/foo.txt", os.F_OK)
print ("F_OK - 返回值 %s"% ret) ret = os.access("/tmp/foo.txt", os.R_OK)
print ("R_OK - 返回值 %s"% ret) ret = os.access("/tmp/foo.txt", os.W_OK)
print ("W_OK - 返回值 %s"% ret) ret = os.access("/tmp/foo.txt", os.X_OK)
print ("X_OK - 返回值 %s"% ret)
import os, sys

path = "/tmp"

# 查看当前工作目录
retval = os.getcwd()
print ("当前工作目录为 %s" % retval) # 修改当前工作目录
os.chdir( path ) # 查看修改后的工作目录
retval = os.getcwd() print ("目录修改成功 %s" % retval)
import os,stat

path = "/tmp/foo.txt"

# 为文件设置标记,使得它不能被重命名和删除
flags = stat.SF_NOUNLINK
retval = os.chflags( path, flags )
print ("返回值: %s" % retval)
import os, sys, stat

# 假定 /tmp/foo.txt 文件存在,设置文件可以通过用户组执行

os.chmod("/tmp/foo.txt", stat.S_IXGRP)

# 设置文件可以被其他用户写入
os.chmod("/tmp/foo.txt", stat.S_IWOTH) print ("修改成功!!")
import os, sys

# 假定 /tmp/foo.txt 文件存在.
# 设置所有者 ID 为 100
os.chown("/tmp/foo.txt", 100, -1) print ("修改权限成功!!")
import os, sys

# 设置根目录为 /tmp

os.chroot("/tmp")

print ("修改根目录成功!!")
import os, sys

# 打开文件
fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT ) # 写入字符串
os.write(fd, "This is test") # 关闭文件
os.close( fd ) print ("关闭文件成功!!")
import os, sys

# 打开文件
fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT ) # 写入字符串
os.write(fd, "This is test") # 关闭文件
os.closerange( fd, fd) print ("关闭文件成功!!")
import os, sys

# 切换到 "/var/www/html" 目录
os.chdir("/var/www/html" ) # 打印当前目录
print ("当前工作目录 : %s" % os.getcwd()) # 打开 "/tmp"
fd = os.open( "/tmp", os.O_RDONLY ) # 使用 os.fchdir() 方法修改目录
os.fchdir(fd) # 打印当前目录
print ("当前工作目录 : %s" % os.getcwd()) # 关闭文件
os.close( fd )
import os, sys
# 打开文件
fd = os.open("f1.txt",os.O_RDWR) # 读取文本
ret = os.read(fd,12)
print (ret) # 关闭文件
os.close(fd)
print ("关闭文件成功!!")
import os

src = '/usr/bin/python'
dst = '/tmp/python' # 创建软链接
os.symlink(src, dst) # 使用软链接显示源链接
path = os.readlink( dst )
print (path)
import os, sys

# 列出目录
print ("目录为: %s" %os.listdir(os.getcwd())) # 移除
os.remove("aa.txt") # 移除后列出目录
print ("移除后 : %s" %os.listdir(os.getcwd()))
import os, sys

# 列出目录
print ("目录为: %s"%os.listdir(os.getcwd())) # 重命名
os.rename("test","test2") print ("重命名成功。") # 列出重命名后的目录
print ("目录为: %s" %os.listdir(os.getcwd()))
mport os, sys

# 打开文件
fd = os.open("f1.txt",os.O_RDWR|os.O_CREAT) # 写入字符串
str = "This is runoob.com site"
ret = os.write(fd,bytes(str, 'UTF-8')) # 输入返回值
print ("写入的位数为: ")
print (ret) print ("写入成功") # 关闭文件
os.close(fd)
print ("关闭文件成功!!")
import os

print( os.path.basename('/root/runoob.txt') )   # 返回文件名
print( os.path.dirname('/root/runoob.txt') ) # 返回目录路径
print( os.path.split('/root/runoob.txt') ) # 分割文件名与路径
print( os.path.join('root','test','runoob.txt') ) # 将目录和文件名合成一个路径
import os
import time file='/root/runoob.txt' # 文件路径 print( os.path.getatime(file) ) # 输出最近访问时间
print( os.path.getctime(file) ) # 输出文件创建时间
print( os.path.getmtime(file) ) # 输出最近修改时间
print( time.gmtime(os.path.getmtime(file)) ) # 以struct_time形式输出最近修改时间
print( os.path.getsize(file) ) # 输出文件大小(字节为单位)
print( os.path.abspath(file) ) # 输出绝对路径
print( os.path.normpath(file) ) # 规范path字符串形式

吴裕雄--天生自然 PYTHON3开发学习:OS 文件/目录方法的更多相关文章

  1. 吴裕雄--天生自然 PYTHON3开发学习:MySQL - mysql-connector 驱动

    import mysql.connector mydb = mysql.connector.connect( host="localhost", # 数据库主机地址 user=&q ...

  2. 吴裕雄--天生自然 PYTHON3开发学习:字符串

    var1 = 'Hello World!' var2 = "Runoob" #!/usr/bin/python3 var1 = 'Hello World!' var2 = &quo ...

  3. 吴裕雄--天生自然 PYTHON3开发学习:数字(Number)

    print ("abs(-40) : ", abs(-40)) print ("abs(100.10) : ", abs(100.10)) #!/usr/bin ...

  4. 吴裕雄--天生自然 PYTHON3开发学习:运算符

    #!/usr/bin/python3 a = 21 b = 10 c = 0 c = a + b print ("1 - c 的值为:", c) c = a - b print ( ...

  5. 吴裕雄--天生自然 PYTHON3开发学习:基本数据类型

    #!/usr/bin/python3 counter = 100 # 整型变量 miles = 1000.0 # 浮点型变量 name = "runoob" # 字符串 print ...

  6. 吴裕雄--天生自然 PYTHON3开发学习:基础语法

    #!/usr/bin/python3 # 第一个注释 print ("Hello, Python!") # 第二个注释 #!/usr/bin/python3 # 第一个注释 # 第 ...

  7. 吴裕雄--天生自然 PYTHON3开发学习:函数

    def 函数名(参数列表): 函数体 # 计算面积函数 def area(width, height): return width * height def print_welcome(name): ...

  8. 吴裕雄--天生自然 PYTHON3开发学习:CGI编程

    <Directory "/var/www/cgi-bin"> AllowOverride None Options +ExecCGI Order allow,deny ...

  9. 吴裕雄--天生自然 PYTHON3开发学习:元组

    tup1 = ('Google', 'Runoob', 1997, 2000) tup2 = (1, 2, 3, 4, 5, 6, 7 ) print ("tup1[0]: ", ...

随机推荐

  1. 基于Qt5的排序算法简单可视化

    之前写了几个排序算法,然后看到别人将排序算法的过程可视化出来,所以就想尝试一下,然后就用Qt简单写了个界面,用QImage和QPainter来画图显示,代码比较简单. 我的想法是画图的时候,图像的X轴 ...

  2. bzoj 4318OSU!

    和tyvj的Easy一样吧(然而还是不会2333) 期望是不能直接平方的(涨姿势),所以,,呵呵 #include<bits/stdc++.h> #define inf 0x7ffffff ...

  3. CTF-域渗透--靶场夺旗

    开门见山 1. 扫描靶场ip 192.168.1.106 2. 扫描靶场开放端口 3. 扫描靶场全部信息 4. 探测靶场敏感信息 5. 对一些特殊的端口进行nc探测 6. 为了绕过对应命令执行限制,可 ...

  4. 十三、CI框架之数据库插入操作

    一.CI的数据库插入代码如下: 二.数据库原数据如下: 三.访问网站之后,会显示相关输出 四.我们查看数据库,会增加一条数据 不忘初心,如果您认为这篇文章有价值,认同作者的付出,可以微信二维码打赏任意 ...

  5. NRF24L01多对一、多通道通讯关键代码

    要想24L01多通道通讯成功,务必先单通道调试成功,并且懂得这块芯片通讯的一些基本知识.   一.基本的通讯条件 1.接收端的接收地址(RX_ADDR_Px)等于发射端的发射送地址(TX_ADDR) ...

  6. 14. react 基础 redux 的编写 TodoList 功能

    1. 安装 redux 监听工具 ( 需要翻墙 ) 打开 谷歌商店 搜索 redux devtool 安装第一个即可 2. 安装 redux yarn add redux 3. 创建 一个 store ...

  7. CentOS 7.3 安装redis 4.0.2服务

    CentOS 7.3 安装redis 4.0.2服务 1.下载解压 下载地址:/home/xiaoming/ wget http://download.redis.io/releases/redis- ...

  8. RewriteEngine On

    RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond ...

  9. ZOJ-1234 UVA-10271 DP

    最近觉得动态规划真的很练脑子,对建模以及思维方法有很大帮助,线段树被卡到有点起不来的感觉 最近仔细思考了一下动态规划的思想,无非是由局部最优解得到全局最优解,由此类推,发现,像最短路和最小生成树其实都 ...

  10. python刷LeetCode:5. 最长回文子串

    难度等级:中等 题目描述: 给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000. 示例 1: 输入: "babad"输出: "bab& ...