Annonce

Réduire
Aucune annonce.

[bash] Script de manipulations simples.

Réduire
Cette discussion est fermée.
X
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • [bash] Script de manipulations simples.

    Faire un script qui :

    - demande si on est sous Linux ou Mac (il devra agir en fonction - portabilité) ;
    - va sur le bureau ;
    - sélectionne toutes les images en .jpg, .gif et .png,etc (le + possible) les copie dans un nouveau dossier dénommé "images" (toujours sur le bureau) et les réduit (poids) de 30% ;
    - fait de mêmes pour les vidéos en .mov, .avi, etc. (le + possible) dans un nouveau dossier "videos" et réduit leur poids de 30% ;
    - fait de même pour les fichiers .txt, .doc, .rtf, etc. (le + possible) dans un dossier "fichiers" et poids -30% aussi ;
    - idem pour les scripts avec extension .c,.h,.cpp,.py,.pl,.php,.html,.css,.xml,.js,.sh, etc. (le + possible) dans un dossier "scripts" ;
    - demande à l'utilisateur s'il veut : "erase old files" (supprimer les anciens fichiers qu'on à copié + réduits dans des nouveaux dossiers) ou "keep old files" (préserver les anciennes versions sur le bureau quand même) ;
    - agir en fonction puis écrire "Done !" puis à la ligne "Quit" et le programme s'arrête.

    Note : scripter de façon propre, synthétique, commentée, indentée, efficace, portable, etc.

    Le tout à m'envoyer par MP, écrire ici "Script done!".

    +3 points à la clé !
    sigpic

    Cyprium Download Link

    Plus j'étudie plus j'me rends compte que je n'sais rien.

    †|

  • #2
    Tu veut copier les fichiers du bureau ou de tout l'ordinateur??

    "erase old files" sa veut dire supprimer les fichier de l'ordinateur qu'on a copier (ce qui reviendrais a déplacer les fichiers)?

    Et pour réduire le poids, on compresse les dossiers en archive genre tar, gzip ?
    "Exeunt les délires de l'amour entés sur une pratique non maîtrisée du sexe. Exit derechef la passion voluptueuse qui fait voir l'être aimé toujours autre qu'il n'est et qui pousse à posséder ce qu'on ne peut pas posséder." Epicure

    Commentaire


    • #3
      1. uniquement les fichiers sur le bureau.
      2. erase old files = supprimer les fichiers d'origine (soit "1") qui ont été compressé (devenus "2") puis déplacés (toujours le "2").
      3. réduction du poids : non, pas par archive. Qu'ils gardent leurs extensions. j'avais une commande qui faisait ça... mais je m'en rappelle plus... (et j'ai un doute quand à la réduction de poids par une commande valable sur tous types de fichiers, je ne sais plus trop). Si cela est un souci, merci de le notifier, et dans ce cas, l'exercice reste le même, sauf qu'on enlève l'histoire de compression (mais je l'ai déjà fait... je sais que c'est possible. Mais sur quel type(s) de fichier(s), çà... je sais plus). Se renseigner
      sigpic

      Cyprium Download Link

      Plus j'étudie plus j'me rends compte que je n'sais rien.

      †|

      Commentaire


      • #4
        Script done, même si je n'ai pas trouvé le commande de compression.
        "Exeunt les délires de l'amour entés sur une pratique non maîtrisée du sexe. Exit derechef la passion voluptueuse qui fait voir l'être aimé toujours autre qu'il n'est et qui pousse à posséder ce qu'on ne peut pas posséder." Epicure

        Commentaire


        • #5
          +3 pour le ptinaze!
          sigpic

          Cyprium Download Link

          Plus j'étudie plus j'me rends compte que je n'sais rien.

          †|

          Commentaire


          • #6
            Code:
            #!/bin/sh
            #!/bin/bash
            
            #Script done by ptinaze for THC
            #dsk_cleaner.sh
            
            echo "\n\n1. Mac \n2. Linux \n3. quitter" ; read OS
            if test "$OS" -eq "1"; then			
            #If you're on Mac OS X
            #Move to the desktop
            cd /Users/*/Desktop
            elif test "$OS" -eq "2"; then 		
            #If you're on Linux
            #Move to the desktop
            cd /root/Desktop
            else 						
            #Quit if the user do not enter 1 or 2
            exit
            fi
            if test "$?" -ne "0"; then  #Si erreur exit
            echo "erreur : $?"
            exit
            fi
            #create directories
            mkdir Files Musics Pictures Videos Scripts
            #Copy files
            cp *.txt Files/ 2>/dev/null; cp *.rtf Files/ 2>/dev/null; cp *.nfo Files/ 2>/dev/null; cp *.doc Files/ 2>/dev/null; cp *.odt Files/ 2>/dev/null; cp *.pdf Files/ 2>/dev/null
            echo "Texts copied"
            sleep "1"
            #Copy musics to the Musics directory
            cp *.mp3 Musics/ 2>/dev/null; cp *.m4a Musics/ 2>/dev/null; cp *.mp4 Musics/ 2>/dev/null;  cp *.wav Musics/ 2>/dev/null
            echo "Musics copied"
            sleep "1"
            #Copy pics to the Pictures directory
            cp *.jpg Pictures/ 2>/dev/null; cp *.bmp Pictures/ 2>/dev/null; cp *.dib Pictures/ 2>/dev/null; cp *.drw Pictures/ 2>/dev/null; cp *.eps Pictures/ 2>/dev/null; cp *.gif Pictures/ 2>/dev/null; cp *.jpeg Pictures/ 2>/dev/null; cp *.pct Pictures/ 2>/dev/null; cp *.png Pictures/ 2>/dev/null; cp *.psd Pictures/ 2>/dev/null; cp *.tif Pictures/ 2>/dev/null; cp *.tiff Pictures/ 2>/dev/null 
            echo "Pics Copied"
            sleep "1"
            #Copy videos to the Videos directory
            cp *.wmv Videos/ 2>/dev/null; cp *.mov Videos/ 2>/dev/null; cp *.mp4 Videos/ 2>/dev/null; cp *.mpg Videos/ 2>/dev/null; cp *.avi Videos/ 2>/dev/null; cp *.flv Videos/ 2>/dev/null
            echo "Videos Copied"
            sleep "1"
            #Copy scripts to the Scripts directory
            cp *.c Scripts/ 2>/dev/null; cp *.h Scripts/ 2>/dev/null; cp *.cpp Scripts/ 2>/dev/null; cp *.py Scripts/ 2>/dev/null; cp *.pl Scripts/ 2>/dev/null; cp *.php Scripts/ 2>/dev/null; cp *.html Scripts/ 2>/dev/null; cp *.css Scripts/ 2>/dev/null; cp *.xml Scripts/ 2>/dev/null; cp *.js Scripts/ 2>/dev/null; cp *.sh Scripts/ 2>/dev/null; cp *.src Scripts/ 2>/dev/null; cp *.aplt Scripts/ 2>/dev/null; cp *.cmd Scripts/ 2>/dev/null; cp *.fla Scripts/ 2>/dev/null; cp *.jse Scripts/ 2>/dev/null; cp *.kal Scripts/ 2>/dev/null; cp *.m Scripts/ 2>/dev/null; cp *.pyw Scripts/ 2>/dev/null; cp *.vbe Scripts/ 2>/dev/null
            echo "Scripts Copied"
            sleep "1"
            echo "\n\nVoulez-vous? \n\n1. Supprimer les fichiers d'origines \n\n2. Garder les fichiers d'origines"; read choix
            if test $choix -eq "1"; then           
            #Supprime les fichiers d'origine si l'utilisateur le decide.
            rm *.txt *.rtf *.nfo *.doc *.odt *.pdf *.jpg *.bmp *.dib *.drw *.eps *.gif *.jpeg *.pct *.png *.psd *.tif *.tiff *.wmv *.mov *.mp4 *.mpg *.avi *.flv *.c *.h *.cpp *.py *.pl *.html *.css *.xml *.js *.sh *.php *.src *.aplt *.cmd *.fla *.kal *.jse *.m *.pyw *.vbe *.m4a* *.mp3 *.mp4 *.wav 2>/dev/null;
            fi
            sleep "1"
            echo "Done"
            sleep "1"
            exit
            sigpic

            Cyprium Download Link

            Plus j'étudie plus j'me rends compte que je n'sais rien.

            †|

            Commentaire

            Chargement...
            X