`

python 操作文件目录

 
阅读更多
# !/usr/bin/python
# -*- coding:UTF-8 -*-

import os
import sys

special_file = ('init-shell.sh', 'report-files.xml', 'report-detail.json', '.report_new.html', 'report-files-type.json',
                'success.check')
special_dir = 'Personal_Analysis'
need_dir = ('Web_Report', 'Needed_Data')


def create_link(source_path, target_path):
    try:
        os.link(source_path, target_path)
    except IOError:
        print "link file is exception", source_path
        sys.exit(1)


def make_dir(target_path):
    try:
        if os.path.exists(target_path):
            return
        os.makedirs(target_path)
    except IOError:
        print "make dir is exception", target_path
        sys.exit(1)


def deal_target_path(source_path, target_path):
    if os.path.isdir(source_path):
        make_dir(target_path)
        list_file = os.listdir(source_path)
        for file_name in list_file:
            if file_name != special_dir:
                new_target_path = target_path + '/' + file_name
                deal_target_path(source_path + '/' + file_name, new_target_path.replace("//", "/"))
    else:
        file_name = os.path.basename(source_path)
        if file_name not in special_file:
            create_link(source_path, target_path)


'''
sourcePath: 原始路径
targetPath: 目标路径
pathType: APP(项目路径) or DATA(其他路径)

 命令使用格式: python LinkAppPath.py sourcePath targetPath type
'''
if __name__ == '__main__':
    args = sys.argv
    if len(args) != 4:
        print '''exception source or target file path is empty'''
        sys.exit(1)

    sourcePath = args[1]
    targetPath = args[2]
    pathType = args[3]

    if not os.path.exists(sourcePath):
        print sourcePath + ''' exception source_path is not exists'''
        sys.exit(1)

    if pathType == "APP":
        Web_Report = sourcePath + "/" + need_dir[0]
        Needed_Data = sourcePath + "/" + need_dir[1]
        target_Web_Report = targetPath + "/" + need_dir[0]
        target_Needed_Data = targetPath + "/" + need_dir[1]
        deal_target_path(Web_Report, target_Web_Report)
        deal_target_path(Needed_Data, target_Needed_Data)
    else:
        if os.path.isfile(sourcePath):
            line = targetPath
            r = line.rfind("/")
            make_dir(line[0:r])
        else:
            make_dir(targetPath)
        deal_target_path(sourcePath, targetPath)
    sys.exit(0)

 

分享到:
评论

相关推荐

    Python文件操作(课件)

    当涉及到文件夹操作时,Python的`os`和`os.path`模块提供了遍历目录和操作文件夹的功能。递归访问文件夹可以使用递归函数或栈来实现。 对于Excel文件的读写,Python有多个库支持,如pandas的`read_excel()`和`to_...

    python文件操作实验报告.doc

    Python文件操作是编程中不可或缺的一部分,它涉及到对文件的读取、写入、追加、移动、删除等操作。在Python中,文件操作通常通过内置的`open()`函数实现,结合不同的模式(如'r'、'w'、'a'等)来执行不同操作。 在...

    python的相关文件操作练习

    在Python编程语言中,文件操作是一项基础且至关重要的技能,尤其对于数据处理、日志记录以及文件存储等应用场景。在“python的相关文件操作练习”中,我们将探讨如何使用Python进行文件的读取、写入、追加以及其他...

    python对操作系统的目录和文件操作

    ### Python 对操作系统的目录和文件操作 在Python中进行文件和目录的操作是非常常见的需求,尤其在处理自动化脚本、文件管理或系统维护等场景时。Python内置的`os`模块提供了丰富的工具集来帮助开发者轻松地完成...

    python 文件简单操作

    Python 文件简单操作 Python 中对文件、文件夹的操作需要涉及到 os 模块和 shutil 模块。下面将详细介绍 Python 中文件简单操作的知识点。...了解这些模块的函数和方法可以帮助我们更好地操作文件和目录。

    python对文件进行操作.md

    学习python,对文件的操作方法的笔记

    精品课件 Python从入门到精通 第13章 文件及目录操作(共26页).ppt

    在Python编程中,文件和目录操作是至关重要的部分,它们允许程序员进行数据的持久化存储以及组织项目结构。第13章"文件及目录操作"深入讲解了如何在Python中进行这些操作,以下是对相关知识点的详细说明: 1. **...

    Python提取pdf文件目录_Demo源码

    本示例"Python提取pdf文件目录_Demo源码"就展示了如何使用Python从PDF文档中抽取书签(目录)并将其转换为JSON格式,这对于需要处理大量PDF文献或需要构建索引的项目非常有用。 首先,我们需要了解涉及到的主要...

    Python实现多级目录压缩与解压文件的方法

    总结一下,Python中实现多级目录的压缩与解压主要依赖`zipfile`库的`ZipFile`类以及`os`库提供的文件和目录操作函数。通过遍历目录结构,读取和写入文件,我们可以轻松地处理复杂的文件压缩和解压缩任务。在实际应用...

    Python 语言实现的抓取网页内容与列文件目录

    本篇将重点讲解如何利用Python抓取网页内容以及如何列文件目录。 首先,让我们深入理解Python中的Web Scraping。Web Scraping是指通过编程方式自动提取网页上的信息。Python中有多个强大的库来支持这项工作,如...

    python 文件操作函数

    在Python编程语言中,文件操作是一项基础且重要的功能,它涉及到对文件的读取、写入、修改以及删除等操作。Python提供了丰富的内置函数来处理文件,这些函数可以帮助程序员高效地进行文件管理。下面,我们将深入探讨...

    python提取pdf文件目录.zip

    标题 "python提取pdf文件目录.zip" 提示我们这个压缩包包含了一个使用Python编程语言来提取PDF文件目录的示例代码。PDF(Portable Document Format)文件是常见的文档格式,它的目录通常包含了章节、子章节等结构,...

    Python简单删除目录下文件以及文件夹的方法

    通过本文介绍的方法,我们可以使用 Python 的 `shutil` 和 `os` 模块轻松实现对指定目录下文件及文件夹的删除操作。这不仅简化了代码的编写过程,还提高了代码的可读性和可维护性。希望本文能够对您的 Python 编程...

    python实现读取文件目录并存储到lst文件中

    功能: 1.判断文件所在的文件夹是否存在,不存在则创建该文件夹; 2.读取文件夹下的所有文件,可以控制是否返回文件的...3.将所有文件的目录存储到指定的lst文件中; 4.读取lst文件中的路径,即将路径加载到列表中。

    python读取文件信息脚本可执行文件.exe

    总的来说,这些Python脚本展示了Python在文件系统操作上的便捷性,不论是自动扫描当前目录还是接受用户输入的路径,都能轻松实现。对于初学者来说,了解并学习这样的脚本有助于提升对文件系统操作的理解,同时对于...

    python操作json文件

    python操作json文件, JSON是一种轻量级的数据交换语言,以文字为基础,且易于让人阅读。尽管JSON是Javascript的一个子集,但JSON是独立于语言的文本格式,并且采用了类似于C语言家族的一些习惯。

    Python实现读取Properties配置文件的方法

    当然,如果你的项目依赖较多的配置文件操作,可能需要考虑使用更高级的库,如`configparser`(Python 3)或`ConfigObj`,它们提供了更多的特性和错误处理机制。不过,对于基本的需求,上述自定义的`Properties`类...

    Python文件操作最全笔记.pdf

    Python文件操作是编程中至关重要的部分,特别是在处理数据和存储...以上内容涵盖了Python文件操作的基本知识,包括文件和目录的操作、文件的读写以及时间戳的处理。这些是Python程序员在处理文件系统任务时必备的技能。

    Python解析cdd 文件和批量删除CANoe工程cbf文件

    批量删除这些文件可以借助Python的os库,它提供了文件和目录操作的功能。 1. 导入os库:`import os` 2. 定义工程目录:`project_dir = 'path_to_project_directory'` 3. 遍历目录中的文件:`for filename in os....

    Python安装文件 Python 3.8

    在Windows操作系统上安装Python 3.8,你需要下载对应的安装文件,如"python-3.8.8-amd64.exe",这是一个适用于64位系统的安装程序。 首先,让我们详细了解一下Python 3.8中的主要特性: 1. **赋值表达式(walrus ...

Global site tag (gtag.js) - Google Analytics