一. shutil 模塊
1. 文件操作
shutil模塊簡單來說是用來複制、歸檔文件和目錄
1> shutil.copyfile(src,dst) 複製一個文件
2>shutil.copymod(src,dst) 複製文件權限 , 將文件權限同步到其他文件
3>shutil.copy(src,dst) 源必須是文件,但是 dst 可以是文件或者目錄
4>shutil.copy2(src,dst) 與 copy 類似,但是源數據也會複製,類似cp -p 命令,將權限 , 時間戳等源數據也複製過去
5>shutil.copytree(src,dst) 以copy2 的方式遞歸複製一個目錄
6>shutil.rmtree(path) 遞歸刪除一個目錄
2. 打包壓縮
shutil.make_archive(base_name, format, root_dir=None,base_dir=None)
base_name: 打包後的文件名稱
format:打包格式
root_dir:壓縮的根目錄
base_dir:開始壓縮的目錄
注:root_dir 和 base_dir 默認都是當前目錄
二. difflib 模塊
1. 文件差異對比
方法一:
注:
'-' 包含在第一個中,但不包含在第二個中
'+' 包含在第二個中,但不包含在第一個中
' ' 兩者相同
'?' 兩個存在增量差異
'^' 標誌出兩者行存在的差異字符
方法二:
eg:比較兩個文件,通過html頁面顯示兩個配置文件之間的差異
測試: