Imprimer RebZone
Win32 Linux Mac
Rebol
(c) 2025 RebolZone - http://rebolzone.free.fr
[ Général ]
Accueil
FTP
[ Rebol ]
Présentation
Installation
Rebol/View
Rebsites
[ Coding ]
Coding Tutorial Start
Outils MySql VID FAQ
Syntaxe Download
[ Divers ]
Documentation
Liens Recherche
Ecrivez-nous
Visiteurs
Visteurs
Lundi 03 novembre 2025

Tutorial

Valid XHTML 1.0!
Le protocole F.T.P.
Précédent ...

Le FTP

Rebol comporte nativement l'accès au protocole FTP, File Transfer Protocol.
FTP permet entre autres de downloader/uploader/supprimer des fichiers, créer/supprimer des répertoires, changer de répertoire ...
On peut développer un gestionnaire FTP, faire des automates de copie de fichiers .... Une URL FTP est de la forme ftp://utilasteur:motdepasse@siteFTP/ ou ftp://siteFTP/ pour une connexion de type anonyme.
On peut déclarer une variable de type URL! Voici un exemple simple permettant de lister le contenu du répertoire racine du site ftp ftpsite.xyz.com avec un utilisateur et un mot de passe :
rebol [
title: "Ftp : exemple de listage d'un repertoire via FTP"
author: "rebolZone"
version: 1.0.0
]
ftpdir: make url!
; utilisateur = utilsateur1 et mot de passe =  zebra3
ftpdir: ftp://utilisateur1:zebra3@ftpsite.xyz.com/
dirs: read ftpdir
; affichage des fichiers et dossiers
probe dirs
;fin de programme
input
L'exemple suivant montre comment créer un répertoire nommé test1 à la racine (attention au / final, test1/) :
rebol [
title: "Ftp : creation d'un repertoire nomme test1 via FTP"
author: "rebolZone"
version: 1.0.0
]
; création de la variable
ftpsite: make url!
; Affectation de l'Url dans la variable
ftpSite: ftp://utilisateur1:zebra3@ftpsite.xyz.com/test1/
; Création du répertoire test1 à la racine
make-dir ftpSite
;fin de programme
input
On peut également supprimer un répertoire. L'exemple suivant montre comment supprimer un répertoire nommé test1 (attention au / final, test1/) :
rebol [
title: "Ftp : Suppression d'un répertoire nommé test1 via FTP"
author: "rebolZone"
version: 1.0.0
]
; création de la variable
ftpsite: make url!
; Affectation de l'Url dans la variable
ftpSite: ftp://utilisateur1:zebra3@ftpsite.xyz.com/test1/
; suppression du répertoire test1 par FTP
delete ftpSite
;fin de programme
input
On peut renommer un répertoire avec l'intruction rename (exemple à taper dans la console Rebol) :
   ; renomme le repertoire test1 en archives
   rename ftp://utilisateur1:zebra3@ftpsite.xyz.com/test1/ archives/
   
On peut également obtenir les infos (date, taille ...) d'un fichier situé sur un serveur FTP :
rebol [
title: "Ftp : Infos d'un fichier"
author: "rebolZone"
version: 1.0.0
]
; création de la variable
ftpFile: make url!
; Affectation de l'Url dans la variable
ftpFile: ftp://utilisateur1:zebra3@ftpsite.xyz.com/index.html
; Lecture des infos par FTP avec info?
infos: info? ftpFile
probe infos
;fin de programme
input
  
En combinant une instruction either, on peut tester l'existance d'un fichier:
rebol [
title: "Ftp : test l'existance d'un fichier"
author: "rebolZone"
version: 1.0.0
]
; création de la variable
ftpFile: make url!
; Affectation de l'Url dans la variable
ftpFile: ftp://utilisateur1:zebra3@ftpsite.xyz.com/index.html
either exists? ftpfile 
[
	print "Le fichier existe, voici ses infos : "  
	infos: info? ftpFile
	probe infos
] 
[	
	print "Le fichier n'existe pas" 
]
;fin de programme
input 
 
La copie d'un fichier texte sur le serveur FTP est réalisée par l'instruction write, l'intruction read lisant le fichier en local :
rebol [
title: "Ftp : Copie d'un fichier texte sur le serveur FTP"
author: "rebolZone"
version: 1.0.0
]
write ftp://utilisateur1:zebra3@ftpsite.xyz.com/mondoc.html  read %mondoc.html 
;fin de programme
input
  
La copie d'un fichier binaire sur le serveur FTP est réalisée en ajoutant le rafiinement /binary aux instructions write et read :
write/binary ftp://utilisateur1:zebra3@ftpsite.xyz.com/prog.exe  read/binary %/C/tmp/prog.exe 
   
L'opération inverse, le téléchargement d'un fichier situé sur le serveu FTP, se fait ainsi :
rebol [
title: "Ftp : telechargement d'un fichier texte a partir du serveur FTP"
author: "rebolZone"
version: 1.0.0
]
; recuperation du contenu du fichier dans une variable
contenu: read ftp://utilisateur1:zebra3@ftpsite.xyz.com/mondoc.html
; autre solution, copie en local du fichier 
write %/c/tmp/fic1.html read ftp://utilisateur1:zebra3@ftpsite.xyz.com/mondoc.html
;fin de programme
input
Remarques : si le fichier à télécharger est un fichier binaire, il faut ajouter les options /binary aux read et write.

Retour début de page