欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python3實現(xiàn)指定目錄下文件sha256及文件大小統(tǒng)計

 更新時間:2019年02月25日 10:20:09   作者:fengbingchun  
這篇文章主要為大家詳細(xì)介紹了python3實現(xiàn)指定目錄下文件sha256及文件大小統(tǒng)計,具有一定的參考價值,感興趣的小伙伴們可以參考一下

有時會統(tǒng)計某個目錄下有哪些文件,每個文件的sha256及文件大小等相關(guān)信息,這里用python3寫了個腳本用來實現(xiàn)此功能,此腳本可跨平臺,同時支持windows和linux,腳本(get_dir_file_info.py)內(nèi)容如下:

import os
import sys
import hashlib
 
def Usage():
 ''' usage description '''
 num = len(sys.argv)
 if num != 3:
 print("Error: please input two parameters")
 print("for example: {} path_name save_file_name".format(sys.argv[0]))
 sys.exit(1)
 
def GetFilesList():
 ''' get file list '''
 input_path_name = sys.argv[1]
 result = list()
 
 for dirpath, dirnames, filenames in os.walk(input_path_name, followlinks=True):
 for filename in filenames:
  file_path = os.path.join(dirpath, filename)
  result.append(file_path)
 
 result.sort()
 return result
 
def CalcFileSha256(filname):
 ''' calculate file sha256 '''
 with open(filname, "rb") as f:
 sha256obj = hashlib.sha256()
 sha256obj.update(f.read())
 hash_value = sha256obj.hexdigest()
 return hash_value
 
def CalcFileSize(filename):
 ''' calculate file size '''
 return os.stat(filename).st_size
 
def GetFileContent():
 ''' get file contnet '''
 files_list = GetFilesList()
 result = list()
 
 for f in files_list:
 hash = CalcFileSha256(f)
 size = CalcFileSize(f)
 file_name = os.path.basename(os.path.realpath(f))
 path_name = os.path.dirname(os.path.realpath(f))
 dictionary = {"path": path_name, "filename": file_name, "sha256": hash, "size": size}
 #print("result: {}".format(dictionary))
 result.append(dictionary)
 return result
 
def WriteToFile(contents):
 ''' write content to the specified file '''
 fp = open(sys.argv[2], "w")
 
 for content in contents:
 #print("content:", content)
 str0 = str(content)
 str1 = str0.replace("\\\\", "/")
 fp.write(str1)
 fp.write("\n")
 fp.close()
 
def ReplaceStr(src_str, new_str):
 ''' replace source string with new string '''
 contents = list()
 
 fp = open(sys.argv[2], "r")
 line = fp.readline()
 while line:
 contents.append(line)
 line = fp.readline()
 fp.close()
 
 fp = open(sys.argv[2], "w")
 for content in contents:
 str0 = content.replace(src_str, new_str)
 fp.write(str0)
 fp.close()
 
def main():
 Usage()
 WriteToFile(GetFileContent())
 ReplaceStr(" ", "")
 ReplaceStr("'", "\"")
 
if __name__ == "__main__":
 main()

執(zhí)行操作如下:

執(zhí)行結(jié)果及生成的prj_file_list.txt內(nèi)容如下:

GitHub:Python_Test

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • python實現(xiàn)橫向拼接圖片

    python實現(xiàn)橫向拼接圖片

    這篇文章主要為大家詳細(xì)介紹了python實現(xiàn)橫向拼接圖片,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • python 下劃線的多種應(yīng)用場景總結(jié)

    python 下劃線的多種應(yīng)用場景總結(jié)

    Python有很多地方使用下劃線,在不同場合下,有不同含義。本文總結(jié)Python語言編程中常用下劃線的地方,力圖一次搞懂下劃線的常見用法,感興趣的朋友快來一起看看吧
    2021-05-05
  • 打包遷移Python?env環(huán)境的三種方法總結(jié)

    打包遷移Python?env環(huán)境的三種方法總結(jié)

    平常工作中可能遇到python虛擬環(huán)境遷移的場景,總結(jié)了如下幾個方法,下面這篇文章主要給大家介紹了關(guān)于打包遷移Python?env環(huán)境的三種方法,需要的朋友可以參考下
    2024-08-08
  • python計算兩個數(shù)的百分比方法

    python計算兩個數(shù)的百分比方法

    今天小編就為大家分享一篇python計算兩個數(shù)的百分比方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • python實現(xiàn)無人機(jī)航拍圖片像素坐標(biāo)轉(zhuǎn)世界坐標(biāo)的示例代碼

    python實現(xiàn)無人機(jī)航拍圖片像素坐標(biāo)轉(zhuǎn)世界坐標(biāo)的示例代碼

    已知相機(jī)參數(shù)在給定像素坐標(biāo)的前提下,求世界坐標(biāo),大部分通過AI來實現(xiàn),本文給大家分享實現(xiàn)腳本,感興趣的朋友跟隨小編一起看看吧
    2024-06-06
  • python交互式圖形編程實例(三)

    python交互式圖形編程實例(三)

    這篇文章主要為大家詳細(xì)介紹了python交互式圖形編程實例第三篇,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • Python玩轉(zhuǎn)PDF的各種騷操作

    Python玩轉(zhuǎn)PDF的各種騷操作

    Portable Document Format(可移植文檔格式),或者PDF是一種文件格式,可以用于跨操作系統(tǒng)的呈現(xiàn)和文檔交換。這篇文章主要介紹了Python玩轉(zhuǎn)PDF的各種騷操作,需要的朋友可以參考下
    2019-05-05
  • jupyter notebook運(yùn)行命令顯示[*](解決辦法)

    jupyter notebook運(yùn)行命令顯示[*](解決辦法)

    這篇文章主要介紹了jupyter notebook運(yùn)行命令顯示[*],文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • Scrapy框架使用的基本知識

    Scrapy框架使用的基本知識

    今天小編就為大家分享一篇關(guān)于Scrapy框架使用的基本知識,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-10-10
  • Django中的模型類設(shè)計及展示示例詳解

    Django中的模型類設(shè)計及展示示例詳解

    這篇文章主要介紹了Django中的模型類設(shè)計及展示,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-05-05

最新評論