διαφορές Μέγεθος αρχείου μετά την αντιγραφή ενός αρχείου σε ένα μέσω του διακομιστή FTP

ψήφοι
35

Έχω δημιουργήσει ένα PHP-script για να ενημερώσετε ένα διακομιστή που είναι ζωντανή μέσα σε ένα τοπικό κατάλογο. Είμαι μεταναστεύουν το σενάριο σε Python. Λειτουργεί μια χαρά ως επί το πλείστον, αλλά μετά από μια PUT εντολή το μέγεθος του αρχείου φαίνεται να αλλάζουν. Έτσι, το μέγεθος του αρχείου είναι διαφορετικό από εκείνο του αρχείου στο διακομιστή.

Μόλις κατεβάσετε το αρχείο ξανά από το διακομιστή FTP, η μόνη διαφορά είναι το σήμα CR / LF. Αυτό με ενοχλεί, γιατί το ίδιο σενάριο συγκρίνοντας το μέγεθος των αρχείων για την ενημέρωση. Επίσης, σε περίπτωση που αυτό σημαίνει κάτι, το σενάριο λειτουργεί τέλεια σε PHP Vía ftp_put.

from ftplib import FTP

ftpserver = myserver
ftpuser = myuser
ftppass = mypwd

locfile =  g:/test/style.css
ftpfile =  /temp/style.css

try:
    ftp = FTP(ftpserver, ftpuser, ftppass)
except:
    exit (Cannot connect)

f = open (locfile, r)
try:
    ftp.delete (ftpfile)
except:
    pass

# ftp.sendcmd (TYPE I)
# ftp.storlines(STOR %s % ftpfile, f)
ftp.storbinary(STOR %s % ftpfile, f)
f.close()

ftp.dir (ftpfile)
ftp.quit()

Οποιεσδήποτε προτάσεις?

Δημοσιεύθηκε 05/08/2008 στις 14:40
πηγή χρήστη
Σε άλλες γλώσσες...                            


3 απαντήσεις

ψήφοι
15

Θέλετε να ανοίξετε το locfile σε δυαδική χρήση rb;

f = open (locfile, "rb")
Απαντήθηκε 05/08/2008 στις 14:45
πηγή χρήστη

ψήφοι
3

Λοιπόν, αν πάει κάτω από τις ιδιότητες των αρχείων σας στα Windows ή ένα περιβάλλον * nix, θα παρατηρήσετε δύο μεγέθη. Το ένα είναι το μέγεθος τομέα, και ένα είναι το πραγματικό μέγεθος. Το μέγεθος τομέας είναι ο αριθμός των τομέων σε bytes που χρησιμοποιούνται στο σκληρό σας δίσκο. Αυτό οφείλεται στο γεγονός ότι τα δύο αρχεία δεν μπορεί να είναι στον ίδιο τομέα με τα πιο σύγχρονα συστήματα αρχείων, έτσι ώστε αν το αρχείο σας γεμίζει το μισό του τομέα ολόκληρος ο τομέας χαρακτηρίζεται ως γεμάτο.

Έτσι ίσως να συγκρίνει το μέγεθος του αρχείου τομέα με το πραγματικό μέγεθος του αρχείου στο διακομιστή FTP ή το αντίστροφο.

Απαντήθηκε 05/08/2008 στις 14:45
πηγή χρήστη

ψήφοι
0

Μικρά αρχεία καταλαμβάνουν μια ολόκληρη κόμβο στο σύστημα αρχείων ό, τι μέγεθος που είναι.

υποδοχής μου έχει την τάση να αναφέρουν όλα τα μικρά αρχεία ως 4 kb σε ftp, αλλά σε ένα κέλυφος δίνει μια ακριβή μέγεθος έτσι ώστε να μπορεί να είναι ένα «χαρακτηριστικό» κοινά σε ftp πελάτες.

Απαντήθηκε 05/08/2008 στις 16:59
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more