velikost souboru rozdíly po zkopírování souboru na server přes FTP

hlasů
35

Vytvořil jsem PHP skript aktualizovat webový server, který je živý uvnitř místního adresáře. Já migraci skript do Pythonu. To funguje ve většině případů, ale po PUT příkazu velikost souboru se zobrazí na změnu. To znamená, že velikost souboru se liší od souboru na serveru.

Jednou jsem se znovu stáhnout soubor z FTP serveru, jediným rozdílem je / LF značka CR. To mě štve, protože stejný scénář porovnává velikost souborů aktualizovat. Také v případě, že něco znamená, skript funguje perfektně v PHP via 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()

Nějaké návrhy?

Položena 05/08/2008 v 14:40
zdroj uživatelem
V jiných jazycích...                            


3 odpovědí

hlasů
15

Potřebujete otevřít locfile v binárním pomocí rb?

f = open (locfile, "rb")
Odpovězeno 05/08/2008 v 14:45
zdroj uživatelem

hlasů
3

No, pokud jste jít pod vlastnostech souboru v systému Windows nebo * nix prostředí, všimnete si dvou velikostech. Jedním z nich je velikost sektoru a jedna je skutečná velikost. Velikost sektoru je počet sektorů v bytech, které jsou používány na vašem pevném disku. To je proto, že dva soubory nemohou být ve stejném odvětví s nejmodernějšími systémy souborů, takže pokud váš soubor zaplní polovinu sektoru celý sektor je označen jako naplněna.

Takže můžete být porovnání velikosti souboru sektor na skutečné velikosti souboru na FTP server, nebo naopak.

Odpovězeno 05/08/2008 v 14:45
zdroj uživatelem

hlasů
0

Malé soubory zabírají celý uzel v souborovém systému bez ohledu na velikost, která je.

Můj hostitel má tendenci vykazovat všechny malé soubory jsou 4 KB na ftp, ale v shellu dává přesné rozměry, takže by to mohlo být ‚funkce‘ společný FTP klienty.

Odpovězeno 05/08/2008 v 16:59
zdroj uživatelem

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