Здесь я пытаюсь перечислить все MD5 загруженных мной файлов и сравнить их с оригиналом, чтобы увидеть, являются ли они одними и теми же файлами. Я не могу получить доступ к серверу, чтобы проверить этот код прямо сейчас, но мне было очень любопытно, сработает ли он ... Есть ли у кого-то лучшее решение или что-то, что они хотели бы изменить?
#!/usr/bin/python3
import paramiko
import pysftp
import os
import sys
print("Localpath eingeben: ")
localpath = input()
print("Remothpath eingeben: ")
remotepath = input()
k = paramiko.RSAKey.from_private_key_file("/home/abdulkarim/.ssh/id_rsa")
c = paramiko.SSHClient()
c.set_missing_host_key_policy(paramiko.AutoAddPolicy())
print("connecting")
c.connect( hostname = "do-test", username = "abdulkarim", pkey = k)
print("connected")
sftp = c.open_sftp()
sftp.Connection.get_d(localpath, remotepath)
#sftp.get_d(localpath, remotepath)
def hashCheckDir(f,r):
files = []
# r=root, d=directories, f = files
for r, d, f in os.walk(localpath):
for file in f:
if '.txt' in file:
files.append(os.path.join(r, file))
files1 = []
# r=root, d=directories, f = files
for r, d, f in os.walk(remotepath):
for file in f:
if '.txt' in file:
files.append(os.path.join(r, file))
for i in range(2):
for x in files:
if os.system('md5sum '+ files) == os.system('ssh do-test md5sum '+ files1):
print ("The lists are identical")
else :
print ("The lists are not identical")
hashCheckDir(localpath,remotepath)
c.close()
Я новенький to Python так .. Потерпите меня, если я сделал какую-нибудь глупую ошибку. Может, мне сначала их отсортировать?