Aller au contenu


[Informatique] Zipper un fichier en commande dos (.bat)


  • Veuillez vous connecter pour répondre
18 réponses à ce sujet

#1 Tatie Choukette-sama

Tatie Choukette-sama

    Metalleux

  • Membres
  • Pip
  • 73 messages

Posté 12 janvier 2012 - 20:39

Hello all!

En tant que bonne geekette, et aussi un peu pour les cours, j'ai écris un script en batch qui me permet de sauvegarder ma BDD mysql (wordpress) dans un dossier de sauvegarde. Maintenant que j'ai parametré le zippage de ce même fichier j'aimerais pourvoir ensuite faire un envois par ftp sur un serveur web distant.

Voici la première partie de mon script (je commente bien tout pour vous aider) :

@echo off

rem setlocal fait que les variables créées dans ce script seront désallouées à la fin du script.
setlocal
rem ----------------------------------------------------

rem Sauvegarde de le base mysql en effectuant un dump

rem Mettre ici le répertoire du programe mysqldump.exe
set chemin_mysql=C:\wamp\bin\mysql\mysql5.5.16\bin
rem
rem Mettre ici le répertoire où l'on veut stocker les fichiers dump
set destination=G:\Sauvegardes\Appli\

rem
rem On lance la sauvegarde avec les paramètres
%chemin_mysql%\mysqldump -h localhost --user=root --password= -B wordpress > %destination%\sauvegarde_wordpress.sql
rem ----------------------------------------------------

rem compression en .zip du fichier créé
cd C:\Backup_Utilities\7-zip\
7z a sauvegarde_wordpress.zip %destination%\sauvegarde_wordpress.sql
rem ----------------------------------------------------

rem déplacement et renommage du fichier

rem on met la date formatée comme on le souhaite dans une variable datejour
set datejour=%date:~6,4%-%date:~3,2%-%date:~0,2%.zip

rem on "deplace" le fichier d'origine vers le fichier avec le bon nom
move C:\Backup_Utilities\7-zip\sauvegarde_wordpress.zip G:\Sauvegardes\Appli\%datejour%

Pour l'envois via ftp je suis toute ouïe x)

#2 le-skateur-du-68

le-skateur-du-68

    Sécurité

  • Membres
  • PipPip
  • 2 763 messages

Posté 12 janvier 2012 - 20:52

C'est simple, suffit de brancher le truc sur le machin, de pas oublier d'activer le transfo triphasé en mode double toaster à spaghettis et c'est dans la poche :twisted: :ph34r:

Nan mais bon je suis déjà dehors :arrow:

#3 geoffrey

geoffrey

    Caméraman

  • Membres
  • PipPipPip
  • 4 619 messages

Posté 12 janvier 2012 - 20:57

Pour envoyer des fichiers sur un ftp tu as FileZilla comme logiciel

Avec en prime un tuto qui t'aideras certainement

#4 Tatie Choukette-sama

Tatie Choukette-sama

    Metalleux

  • Membres
  • Pip
  • 73 messages

Posté 12 janvier 2012 - 21:08

En fait je sais me servir de filezilla, je veux faire ça en automatique c'est pour ça que j'ai besoin d'un batch ^^

Modifié par Tatie Choukette-sama, 12 janvier 2012 - 21:09.


#5 geoffrey

geoffrey

    Caméraman

  • Membres
  • PipPipPip
  • 4 619 messages

Posté 12 janvier 2012 - 21:19

Alors là je seche

Pierrick sera sans doute t'aider (ou Stevens)

#6 Stevens

Stevens

    Je métal, tu t'étales, nous métalleux

  • Administrateurs
  • 5 600 messages

Posté 12 janvier 2012 - 23:34

Hmm je regarde demain matin au boulot :) La je joue à BF :P

EDIT : je pensais que c'était du linux, je connais pas trop la syntaxe windows pour lu batch mais j'ai trouvé ça :

http://www.commentca...gne-de-commande

#7 Tatie Choukette-sama

Tatie Choukette-sama

    Metalleux

  • Membres
  • Pip
  • 73 messages

Posté 13 janvier 2012 - 17:28

XD merci de ta réponse je vais tester ça cette nuit en rentrant ^^
Et avec du linux ça aurait été tellement plus simple, j'ai des amis un peu intégristes qui m'ont carrément suggéré d'installer une debian, le problème c'est que mon tp porte sur windaube et non sur linux.
Je posterais demain mon .bat pour le ftp je pense.

#8 Tatie Choukette-sama

Tatie Choukette-sama

    Metalleux

  • Membres
  • Pip
  • 73 messages

Posté 14 janvier 2012 - 19:00

Voici mes 3 scripts en batch \o/ pour ma PTI sauvegarde YOUHOUH!

Le but du premier est de faire une sauvegarde automatiques des données d'un poste client sur un espace disque donné ici S:\"L'utilisateur"\"Date du jour".zip (date du jour formatée en aaaa-mm-jj) et on éteinds automatiquement le PC à la fin
Le S:\ pointe sur l'espace D:\Sauvegardes\ du serveur où se trouve ma base de données:

rem @ echo off désactive l'affichage des commandes sur le shell
@ echo off

rem on met la date formatée comme on le souhaite dans une variable datejour
set datejour=%date:~6,4%-%date:~3,2%-%date:~0,2%

rem compression en .zip du dossier mes documents
cd C:\Backup_Utilities\7-zip\
7z a %datejour%.zip %userprofile%\documents
rem ----------------------------------------------------

rem déplacement du fichier vers le dossier de sauvegarde
xcopy C:\Backup_Utilities\7-zip\%datejour%.zip S:\%username%\ /M
rem ----------------------------------------------------

rem suprimer le fichier zip restant dans le dossier 7-zip
del %datejour%.zip
rem ----------------------------------------------------

rem on éteinds le PC
shutdown

Le second script lui me permet de sauvegarder une base sql à l'aide de l'outil mysqldump, et d'ensuite la zipper pour l'envoyer vers un emplacement spécifique ici D:\Sauvegardes\Appli\ avec comme nom la date du jour formatée en aaaa-mm-jj:

@ echo off
rem setlocal fait en sorte que les variables créées dans ce script seront désallouées à la fin du script. ça évite de mettre la drouille dans les autres scripts
setlocal
rem ----------------------------------------------------

rem Ce batch a pour but de sauvegarder des bases mysql en effectuant un dump

rem Mettre ici le répertoire du programe mysqldump.exe
set chemin_mysql=C:\wamp\bin\mysql\mysql5.5.16\bin
rem
rem Mettre ici le répertoire où l'on veut stocker les fichiers dump
set destination=D:\Sauvegardes\Appli\

rem On lance la sauvegarde avec les paramètres
%chemin_mysql%\mysqldump -h localhost --user=XXXX --password=XXXX -B NomDeLaBaseAsauvegarder > %destination%\sauvegarde_wordpress.sql
rem ----------------------------------------------------

rem compression en .zip du fichier créé
cd C:\Backup_Utilities\7-zip\
7z a sauvegarde_wordpress.zip %destination%\sauvegarde_wordpress.sql
rem ----------------------------------------------------

rem déplacement et renommage du fichier

rem on met la date formatée comme on le souhaite dans une variable datejour
set datejour=%date:~6,4%-%date:~3,2%-%date:~0,2%.zip

rem on "deplace" le fichier d'origine vers le fichier avec le bon nom
move C:\Backup_Utilities\7-zip\sauvegarde_wordpress.zip D:\Sauvegardes\Appli\%datejour%

Et enfin le script qui me permet d'envoyer le dossier D:\Sauvegardes\ sur un serveur web distant:
Il faut d'abord crée un fichier .txt avec les options de connexion ici connexionftp.
Connexion ftp contient:
L'user
Le password
cd [dossier dans lequel on veux copier les fichiers]
pwd
put C:\Backup_Utilities\7-zip\sauvegardes.zip
quit

pwd permet de vérifier qu'on est dans le bon répertoire et quit permet de se déconnecter du ftp une fois le transfert terminé.

Ensuite voici le script en bacth

@ echo off

rem compression en .zip du dossier mes documents
cd C:\Backup_Utilities\7-zip\
7z a sauvegardes.zip D:\Sauvegardes
rem ----------------------------------------------------

rem envois au serveur web via ftp en utilisant le fichier de connexion ftp
cd C:\Backup_Utilities\

ftp -s:connexionftp.txt ftp.nomdelhote.fr

rem supression du fichier zip précédement copié
del 7-zip\sauvegardes.zip

Modifié par Tatie Choukette-sama, 14 janvier 2012 - 19:02.


#9 Stevens

Stevens

    Je métal, tu t'étales, nous métalleux

  • Administrateurs
  • 5 600 messages

Posté 15 janvier 2012 - 00:29

Ha ba c'est pas mal du tout ça dis moi !

#10 Tatie Choukette-sama

Tatie Choukette-sama

    Metalleux

  • Membres
  • Pip
  • 73 messages

Posté 15 janvier 2012 - 23:05

Merci, perso je trouve même que c'est un exploit... je suis archi nulle en dev... En réseau aussi en fait u_u' parfois (souvent) je me demande ce que je fou en BTS IG...

#11 Stevens

Stevens

    Je métal, tu t'étales, nous métalleux

  • Administrateurs
  • 5 600 messages

Posté 16 janvier 2012 - 21:44

IG ? Nioniotte :P (sans t'offenser)

Le batch est plutôt facile, voir agréable. J'aime bien ce genre de langage.

#12 Tatie Choukette-sama

Tatie Choukette-sama

    Metalleux

  • Membres
  • Pip
  • 73 messages

Posté 20 janvier 2012 - 19:03

Pour moi IG c'est déjà trop u_u' t'as fait quoi toi?


Je suis d'accord avec toi le batch c'est assez facile sinon je n'aurais pas réussi à faire cette pti

#13 Stevens

Stevens

    Je métal, tu t'étales, nous métalleux

  • Administrateurs
  • 5 600 messages

Posté 20 janvier 2012 - 20:26

Mais je ne crache pas sur ton travail en tout cas, c'est sympa :)

J'ai fais STI élec au bac, puis BTS Réseau / Dev puis GSI (gestion système d'informations)

#14 Tatie Choukette-sama

Tatie Choukette-sama

    Metalleux

  • Membres
  • Pip
  • 73 messages

Posté 24 janvier 2012 - 19:46

Perso je pense m'arrêter à la licence et encore je ne suis pas sûre d'en faire une parce que bon 2 ans de DUT + 2 ans de BTS ça commence à faire long

#15 Stevens

Stevens

    Je métal, tu t'étales, nous métalleux

  • Administrateurs
  • 5 600 messages

Posté 24 janvier 2012 - 21:09

C'est un plus pas mal, c'est qu'un an. En fonction de tes possibilité et envie. Mais essai de les faire ;)

Voir en alternance, ça peut te faire une première embauche.




0 utilisateur(s) li(sen)t ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)