• STATISTIQUES
  • Il y a eu un total de 0 membres et 40450 visiteurs sur le site dans les dernières 24h pour un total de 40 450 personnes!
    Membres: 2 605
    Discussions: 3 579
    Messages: 32 816
    Tutoriels: 78
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [FR] µContest
    µContest est un site de challenges de programmation, c'est à dire qu'il propose des épreu...
    Hacking
    [EN] Listbrain Version 3
    Site proposant 66 challenges présentés dans une liste mélangée.
    Challenges
    [EN] Rosecode
    Programming: 36, Math: 29, Probability: 5, Sequence: 7, Crypto: 4, Brainf**k: 13, TimeRace: 4, Hack: 9
    Challenges
    [FR] Cyber-Hacker
    CH - Cyber Hacker est un jeu par navigateur de simulation de hack, programmez et envoyez vos virus et piratez les aut...
    Hacking
    [EN] Lost-chall
    Site de challenge présenté sous la forme de différente saison. Pour passer une saison vous devez avoir accumul...
    Challenges
    [FR] PHP France
    Pour tout savoir sur le PHP, en français. Vous trouverez des tutoriels, des exemples, des astuces, toute la do...
    Hacking
    [FR] Microcontest
    Cryptographie: 7, Mathématiques: 8, Image Son Vidéo: 5, Intelligence artificielle: 3, Réseau: 2, Divers: 7, Phy...
    Challenges

  • DONATION
  • Si vous avez trouvé ce site internet utile, nous vous invitons à nous faire un don du montant de votre choix via Paypal. Ce don servira à financer notre hébergement.

    MERCI!




Note de ce sujet :
  • Moyenne : 5 (1 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
[Python] Sauvegarde de fichier
13-02-2012, 12h43 (Modification du message : 08-12-2012, 16h39 par supersnail.)
Message : #1
Dr.Jekyll Hors ligne
Newbie
*



Messages : 14
Sujets : 4
Points: 2
Inscription : Sep 2011
[Python] Sauvegarde de fichier
Salut à tous, je vais partager avec vous un, certes petit script, mais un script quand même =). J'ai fait ce script surtout pour m'entrainer dans python Big Grin.
Ce script permet de sélectionner un dossier et de le mettre sous la forme d'une archive tar, et collez la sauvegarde, dans le dossier /home/votrelogin/Archive.
Comme vous l'aurez compris, il ne marche pour l'instant que sous Linux.
Je vais donc essayé de l'adapter pour la portabilité avec windows Big Grin
Donc si vous voyez des améliorations n'hésitez pas Big Grin
Code PYTHON :

# /usr/bin/python
# - * - coding: Latin-1 - *
 
#######################################################
#Author : Angelo
#Date : 11.02.2012
#Website :Angelo.otaku-ana.net
#Thanks to : Fr0g, Daft
#This program is free,distribuate with a GNU Licence.
#######################################################
 
 
import shutil
import os
import tarfile
import time
 
 
reponse_a = str();# Variable pour quitter
position = str(); # Curseur de la position actuelle
add = str();      #Variable pour quitter l'ajout d'un dossier enfant,
#                  et ajout d'un nouveau répértoire
local = os.environ['USER']; # Nom d'utilisateur
nom = time.strftime('%d-%m-%y-%H:%M',time.localtime())
heure = time.strftime('%H:%M',time.localtime())
 
if os.name == "posix": #Si le système est de type Unix
    cible = '/home/'+local;
    lo = 'Linux';
else :
    lo = 'Windows'
   
print (nom)#Affiche l'heure et la date
print("Vous etes sous : {0}".format(lo));
print("Pour quitter appuyer sur q sinon sur entrez \n");
reponse_a = raw_input('> '); #Savoir si l'utilisateur veut rester
reponse_a = reponse_a.lower();#Convertir majucule en minuscules
while reponse_a != "q":
    os.system('clear')
    position = os.getcwd();#Répértoire courant
    print("Le repertoire est: {0},il est {1}".format(position,heure));
    liste = os.listdir(position);
    print("----------------------------------------------------------");
    print(liste);
    print("----------------------------------------------------------");
    print("Pour rentrer dans un autre repertoire");
    print("Entrez seulement son nom");
    print("Pour terminer, lancer la commande : stop");
    print("Pour remonter d'un repertoire taper '..'")
    print("----------------------------------------------------------");
    add = "/"+raw_input('> ');
    if add !="/stop":
        try:
            position = position + add; #Calcul la nouvelle postion
            os.chdir(position);        #Va à la nouvel position
            os.system('clear')
        except:
            print("Erreur mauvais repertoire,\n appuyer sur entrez");
            raw_input();
            os.system('clear')
 
    else:
        break;
 
os.system('clear')
print("Le repertoire choisi est : {0}".format(position));
print("Creation de l'archive en cours ...");
Archive = tarfile.open('Archive','w');
Archive.add(position);
print("Creation de l'archive terminé !");
Archive.close;
 
os.chdir(cible); # Va au repertoire /home/login
os.system('mkdir Archive'); # Crer le dossier Archive
 
src = position+"/"+"Archive";
dst = "/{0}/Archive/{1}".format(cible,nom); # Destination a
# /home/login/Archive et renomme le fichier a la date.
shutil.move(src,dst); #Deplace le fichier
print("Deplacement finit, le fichier ce trouve a /home/login/Archive");
print("Merci d'avoir utiliser ce programme");
 
+1 (2) -1 (0) Répondre
13-02-2012, 21h31
Message : #2
Di0Sasm Hors ligne
Chimiste
*******



Messages : 922
Sujets : 56
Points: 92
Inscription : Aug 2011
RE: Sauvgarde de fichier
Le but c'est l'apprentissage donc, merci d'avoir posté ce script, ça pourrais donner des envies à certains de coder ou même d'apprendre le langage python.
+1 (0) -1 (0) Répondre
14-02-2012, 18h53
Message : #3
Dobry Hors ligne
Tueur de lamouz
*



Messages : 206
Sujets : 25
Points: 73
Inscription : Aug 2011
RE: Sauvgarde de fichier
Ah tu as finalement trouvé les variables d’environnement, bien joué (à part que c'est python 3 que tu utilises :trollSmile
Aestuārium Erudītiōnis

There are only two hard things in Computer Science: cache invalidation, naming things, and off-by-one errors.
+1 (0) -1 (0) Répondre
15-02-2012, 03h50
Message : #4
Zhyar Hors ligne
Membre actif
*



Messages : 164
Sujets : 5
Points: 15
Inscription : Jun 2011
RE: Sauvgarde de fichier
Ca fait plaisir de voir que tu fais pas que de manger des nouilles en cube sur Minecraft. Smile
Ca m'a l'air pas mal ton script continu comme ça !
+1 (0) -1 (0) Répondre
31-10-2012, 19h59
Message : #5
Saitek Hors ligne
Membre
*



Messages : 30
Sujets : 4
Points: 0
Inscription : Oct 2011
RE: Sauvgarde de fichier
Sympatoche Smile
+1 (0) -1 (0) Répondre
31-10-2012, 20h22
Message : #6
Swissky Absent
Bon membre
*



Messages : 523
Sujets : 32
Points: 96
Inscription : Apr 2012
RE: Sauvgarde de fichier
Je n'utilise pas python mais on peut pas réduire ton code ?
du style transformer :
print("----------------------------------------------------------");
print("Pour rentrer dans un autre repertoire");
print("Entrez seulement son nom");
print("Pour terminer, lancer la commande : stop");
print("Pour remonter d'un repertoire taper '..'")
print("----------------------------------------------------------");
en
print("----------------------------------------------------------/n Pour rentrer dans un autre repertoire");?

Je dis ça parce que j'aime pas les répétitions inutile de echo, print, printf etc ^^
+1 (0) -1 (0) Répondre
31-10-2012, 21h23 (Modification du message : 31-10-2012, 21h24 par Luxerails.)
Message : #7
Luxerails Hors ligne
Bon membre
*



Messages : 267
Sujets : 6
Points: 67
Inscription : Aug 2011
RE: Sauvgarde de fichier
Personellement je préfère lire
Citation :print("----------------------------------------------------------");
print("Pour rentrer dans un autre repertoire");
print("Entrez seulement son nom");
print("Pour terminer, lancer la commande : stop");
print("Pour remonter d'un repertoire taper '..'")
print("----------------------------------------------------------");

que

Citation :print("----------------------------------------------------------\nPour rentrer dans un autre repertoire\nEntrez seulement son nom\nPour terminer, lancer la commande : stop\nPour remonter d'un repertoire taper '..'\n----------------------------------------------------------");

...
+1 (0) -1 (0) Répondre
31-10-2012, 22h20
Message : #8
ThibauT Hors ligne
Keyboard not found, press F1 to resume.
*



Messages : 348
Sujets : 6
Points: 69
Inscription : Jun 2012
RE: Sauvgarde de fichier
(31-10-2012, 21h23)Luxerails a écrit : Personellement je préfère lire
Citation :print("----------------------------------------------------------");
print("Pour rentrer dans un autre repertoire");
print("Entrez seulement son nom");
print("Pour terminer, lancer la commande : stop");
print("Pour remonter d'un repertoire taper '..'")
print("----------------------------------------------------------");

que

Citation :print("----------------------------------------------------------\nPour rentrer dans un autre repertoire\nEntrez seulement son nom\nPour terminer, lancer la commande : stop\nPour remonter d'un repertoire taper '..'\n----------------------------------------------------------");

...

Moi de même, c'est plus agréable et plus lisible.

Sinon, merci pour ce script Smile
Martin Golding a écrit :"Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live."

Gnomino a écrit :et quand je suis payé je fais ce qu'on me demande :B
+1 (0) -1 (0) Répondre
31-10-2012, 23h21
Message : #9
Swissky Absent
Bon membre
*



Messages : 523
Sujets : 32
Points: 96
Inscription : Apr 2012
RE: Sauvgarde de fichier
Alors je retire ce que j'ai dis , je dois avoir de mauvaises habitudes de codage xD
+1 (0) -1 (0) Répondre
01-11-2012, 04h21 (Modification du message : 01-11-2012, 04h22 par fr0g.)
Message : #10
fr0g Hors ligne
NTEuNDI2MzcsLTEuNzc4NDg4
*****



Messages : 348
Sujets : 22
Points: 56
Inscription : Aug 2011
RE: Sauvgarde de fichier
(31-10-2012, 20h22)Swissky a écrit : Je n'utilise pas python mais on peut pas réduire ton code ?
du style transformer :
print("----------------------------------------------------------");
print("Pour rentrer dans un autre repertoire");
print("Entrez seulement son nom");
print("Pour terminer, lancer la commande : stop");
print("Pour remonter d'un repertoire taper '..'")
print("----------------------------------------------------------");
en
print("----------------------------------------------------------/n Pour rentrer dans un autre repertoire");?

Je dis ça parce que j'aime pas les répétitions inutile de echo, print, printf etc ^^


Pour python 2.* comme ça :
Code :
print """
Your text
"""

Mais je pense pas que ça marche en python3 essayes toujours on sait jamais ^^, (btw 2.7 ftw Smile )
+1 (0) -1 (0) Répondre
01-11-2012, 22h50
Message : #11
sakiir Hors ligne
[sakiir@Ubuntu]:~$ ./ExploitMe ShellC0de
*



Messages : 411
Sujets : 51
Points: 34
Inscription : Sep 2012
RE: Sauvegarde de fichier
Ouai je fais comme Fr0g aussi !
Et si non ouai pas mal le code Smile
+1 (0) -1 (0) Répondre


Sujets apparemment similaires…
Sujet Auteur Réponses Affichages Dernier message
  [Python]Situer mon niveau. InforMods 19 946 10-11-2016, 00h03
Dernier message: ZeR0-@bSoLu
  [PYTHON] un bot IRC basique darcosion 1 137 13-06-2016, 20h40
Dernier message: Yttrium
  [python] ANBU ::: TCP Session Hunter St0rn 2 222 25-02-2016, 18h45
Dernier message: otherflow
  [Python] Une autre façon de gérer les Virtualenv et Packages thxer 2 120 18-01-2016, 12h06
Dernier message: thxer
  [Python] rot script ark 9 431 08-03-2015, 00h37
Dernier message: ark
  [Python] Todo Manager ark 5 347 03-03-2015, 10h55
Dernier message: ark
  [python] Un décorateur pour inventorier les objets b0fh 1 156 04-12-2014, 17h50
Dernier message: thxer
  [python] UPnP Scanner St0rn 2 179 29-10-2014, 14h50
Dernier message: St0rn
  [python] Buffer Overflow : EBP et EIP St0rn 0 124 25-10-2014, 12h58
Dernier message: St0rn
  [Python] QuickHex thxer 9 419 15-08-2014, 20h26
Dernier message: sakiir

Atteindre :


Utilisateur(s) parcourant ce sujet : 5 visiteur(s)
N-PN
Accueil | Challenges | Tutoriels | Téléchargements | Forum | Retourner en haut