簡單的一個python腳本(python3),搜索大文件。
要傳兩個參數(shù),第一個文件路徑,第二個是多少k以上顯示,會打印一個列表
#!/usr/bin/python
# -*- encoding: utf-8 -*-
import os
import sys
file_path = sys.argv[1]
limit_size = sys.argv[2]
def show_files(path, all_files):
# 首先遍歷當前目錄所有文件及文件夾
file_list = os.listdir(path)
# 準備循環(huán)判斷每個元素是否是文件夾還是文件,是文件的話,把名稱傳入list,是文件夾的話,遞歸
for file in file_list:
# 利用os.path.join()方法取得路徑全名,并存入cur_path變量,否則每次只能遍歷一層目錄
cur_path = os.path.join(path, file)
# 判斷是否是文件夾
if os.path.isdir(cur_path):
show_files(cur_path, all_files)
else:
all_files.append(cur_path)
return all_files
def get_FileSize(filePath):
# filePath = unicode(filePath,'utf8')
fsize = os.path.getsize(filePath)
fsize = fsize/float(1024)
return round(fsize,2)
def main():
# 傳入空的list接收文件名
contents = show_files(file_path, [])
# 循環(huán)打印show_files函數(shù)返回的文件名列表
for content in contents:
filesize = get_FileSize(content)
if filesize > int(limit_size):
print(content + "--------:" + str(filesize) + "kb")
return 0
if __name__ == "__main__":
sys.exit(main())
比如可以用來檢查本地圖片大小。
圖片太大的話可以用 https://tinypng.com/壓縮,效果誰用誰知道~