Contenu | Rechercher | Menus

Annonce

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".
Test de l'ISO d'Ubuntu francophone : nous avons besoin de testeurs pour la version francophone d'Ubuntu 14.04. Liens et informations ici.

Attention, une faille de sécurité dans bash a récemment été rapportée, il est recommandé de mettre à jour son système (plus de détails) *** mise à jour 12/10/2014 ***

#1051 Le 29/06/2010, à 12:20

yamo

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Hizoka a écrit :

là, j'ai pas piger ta soluce pour le dial ? pourquoi passer par 2 fichier temporaire alors qu'avec des variables ça passe ?

Par ce que  j'avais sous la main un script qui écrivait dans des fichiers et donc fonctionnel tongue

C'est vrai que c'est mieux avec des variables mais j'ai plus d'habitude avec des fichiers et c'est plus facile à débugger.


Stéphane
--
Debian 7.0 XFCE 4.8   - #ubuntu sur freenode

sudo / matrix

Hors ligne

#1052 Le 29/06/2010, à 12:29

Hizoka

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

c'est plus facile à débugger.

Au pire pour debugguer :

variable="vive moi"
#debug
echo "variable : $variable" > debug.txt
#ou simplement
echo "variable : $variable"

mais bon chacun fais ce qu'il veut tongue, perso j'aime pas créer des fichiers inutiles.

Hors ligne

#1053 Le 29/06/2010, à 22:53

Xanatos00

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Merci pour vos contributions @Hizoka et @yamo
je teste de suite avant d'implémenter avec du php

Hors ligne

#1054 Le 29/06/2010, à 23:13

kemo006

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Bonsoir tout le monde !

j'ignore si cela a déjà été demandé, mais je recherche un script qui pourrait enregistrer sur un support amovible
ce qui suit :

- le dossier HOME
- /etc/apt/sources.list (pour la liste des dépôts)
- la liste des paquets installés
- /usr/share/applications/desktop.fr_FR.utf8.cache (pour la composotion des menus de gnome)

Et je crois que ceci suffit pour une réinstallation complète du poste en cas de problème.

Peut-être qu'un script du genre existe mais mes recherches ne m'amène nulle part. Merci à vous.

PS : si j'ai oublié des fichiers "indispensables", n'hésitez pas à les citer.

Hors ligne

#1055 Le 29/06/2010, à 23:40

Hizoka

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

ca c'est tres imple a faire soi meme, de simples cp....

Hors ligne

#1056 Le 29/06/2010, à 23:58

kemo006

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Bravo Hizoka pour ton logiciel générateur de fenêtres. Cela va m'aider grandement pour l'élaboration d'un script sur mesure. Par contre, l'utilisation de ton logiciel me pose problème : la dépendance "gtkdialog_0.7.20.deb" est introuvable dans les dépôts. Heureusement qu'elle est disponible sur le site Ubuntu.

Hors ligne

#1057 Le 30/06/2010, à 00:53

Lefrein

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Merci beaucoup yamo et hizoka pour votre aide, mon cousin m'a finalement donné une solution basée sur ce qu'à proposé yamo (en fait comme le forum n'avait pas bougé depuis quelques jours je n'étais pas repassé pour voir les derniers posts donc je n'avais pas vu ta proposition hizoka) ; en tout cas je vous livre la soluce qui a marché pour moi :

#!/bin/bash

for i in $(seq 1 700)
do
 echo $i
 mkdir -p newjpg/dossier$i
done

suivi de :

#!/bin/bash

i=0
find jpg/ -type f | while read fichier
do
 i=$(( $i + 1 ))
 f=$(( $i % 500 ))
 cp "$fichier" newjpg/dossier$f
done

J'ai préféré copier les dossier plutôt que les déplacer.
Merci encore pour votre aide, ça m'a enlevé une sacrée épine du pied et je pense qu'à l'avenir je vais m'intéresser de plus près aux scripts bash.

Hors ligne

#1058 Le 30/06/2010, à 01:24

Hizoka

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

for i in $(seq 1 700)

=>

for i in {1..700}
find jpg/ -type f | while read fichier
do
done

=>

while read fichier
do
done < <(find jpg/ -type f)

Ca evite un pipe.

kemo006 => je suis sur une nouvelle version qui utilisera plus gtkdialog et il sera bien plus pratique smile

Dernière modification par Hizoka (Le 30/06/2010, à 01:46)

Hors ligne

#1059 Le 30/06/2010, à 13:24

Lefrein

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Merci pour tes modifications Hizoka (apparemment c'est optimisé), j'espère arriver à comprendre plus tard comment ça fonctionne. tongue

Hors ligne

#1060 Le 30/06/2010, à 19:49

andso

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

bonjour,
pour info installation automatisée par le réseau
http://forum.ubuntu-fr.org/viewtopic.php?id=276816&p=1
mis dans la doc SCRIPTS UTILES


IMPORTANT: Booster votre (X et K)ubuntu:
http://forum.ubuntu-fr.org/viewtopic.php?id=241092 (pfou!...)
à essayer
et... demain debian? http://fr.wikipedia.org/wiki/Demain_les_chiens

Hors ligne

#1061 Le 30/06/2010, à 21:41

kemo006

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Je vous propose ce script sans prétention (fortement inspiré d'un autre) qui permet de sauvegarder son HOME, la liste des sources et la liste des paquets installés. Bien sûr il y a des améliorations à apporter, mais pour mon usage, c'est amplement suffisant.

#!/bin/bash


    echo "Bienvenue dans Sauvegarde Facile"
 

    choice=$(zenity --width=200 --height=260 --list --column "" --checklist --title="Sauvegarde" \
    --text="Choisissez vos options de sauvegarde :"\
    --column "Description" \
    TRUE "1  /home/"\
    TRUE "2  Sources.list" \
    TRUE "3  Liste des paquets" \
   
	);

	case "${choice}" in
        "")
        echo "Annulation. Redémarrez l'application et choisissez au moins une option."
	read a
	exit
	
        ;;
    esac


    support=$(zenity --entry --text "Dossier de destination :" --title="Sauvegarde");

	
    case "${support}" in
        "")
        echo "Annulation. Redémarrez l'application et entrez une destination correcte."
	read a
	exit
        ;;
    esac


    case "${choice}" in
        *"home"* )
        echo "#1 \"/home/\""
        sudo cp -ravi /home/ ${support}/home/
	echo "### HOME sauvegardé ! ###"
        ;;
    esac
   
    
    case "${choice}" in
        *"Sources.list"* )
        echo "#2 \"Sources.list\""
        sudo cp -ravi /etc/apt/sources.list ${support}/sources.list
	echo "# Liste des dépôts sauvegardée ! #"
        ;;
    esac


    case "${choice}" in
        *"paquets"* )
        echo "#3 Liste des paquets"
        sudo dpkg --get-selections > ${support}/listepaquets.txt

        # Pour restaurer : dpkg --set-selections < listepaquets.txt && sudo apt-get dselect-upgrade

	echo "# Liste des paquets sauvegardée ! #"
        ;;
     esac
    
echo "Sauvegarde de votre sélection terminée ! - N'hésitez pas à vérifier votre dossier de sortie pour écarter toute erreur."

read a
exit

Dernière modification par kemo006 (Le 02/07/2010, à 00:35)

Hors ligne

#1062 Le 02/07/2010, à 08:53

Hizoka

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

case n'est pas bien utilisé..

si tu veux faire :

 case "${choice}" in
        "")
        echo "Annulation. Redémarrez l'application et choisissez au moins une option."
    read a
    exit
    
        ;;
    esac

==>

 if [[ -z ${choice} ]]
then
        echo "Annulation. Redémarrez l'application et choisissez au moins une option."
    read a
    exit
fi

l'interet de case est de regrouper les commandes

 case "${choice}" in
        *"home"* )
        echo "#1 \"/home/\""
        sudo cp -ravi /home/ ${support}/home/
    echo "### HOME sauvegardé ! ###"
        ;;
    esac
   
    
    case "${choice}" in
        *"Sources.list"* )
        echo "#2 \"Sources.list\""
        sudo cp -ravi /etc/apt/sources.list ${support}/sources.list
    echo "# Liste des dépôts sauvegardée ! #"
        ;;
    esac

==>

 case "${choice}" in
        *"home"* )
        echo "#1 \"/home/\""
        sudo cp -ravi /home/ ${support}/home/
        echo "### HOME sauvegardé ! ###" ;;

        *"Sources.list"* )
        echo "#2 \"Sources.list\""
        sudo cp -ravi /etc/apt/sources.list ${support}/sources.list
        echo "# Liste des dépôts sauvegardée ! #" ;;
    esac

Dans le cas ci-dessus, il ne traitera qu'une fois l'info, donc tu n'auras qu'un seul retour, de ce fait, tu entoure les case d'une boucle (comme while dans l'exemple suivant)

 while read ligne
do
     case "${choice}" in
        *"home"* )
        echo "#1 \"/home/\""
        sudo cp -ravi /home/ ${support}/home/
        echo "### HOME sauvegardé ! ###" ;;

        *"Sources.list"* )
        echo "#2 \"Sources.list\""
        sudo cp -ravi /etc/apt/sources.list ${support}/sources.list
        echo "# Liste des dépôts sauvegardée ! #" ;;

        *"paquets"* )
        echo "#3 Liste des paquets"
        sudo dpkg --get-selections > ${support}/listepaquets.txt

        # Pour restaurer : dpkg --set-selections < listepaquets.txt && sudo apt-get dselect-upgrade

        echo "# Liste des paquets sauvegardée ! #" ;;
    esac
done < <(tr '|' '\n' <<< "$choice")

Pourquoi mettre des read a un peu partout ?

Dernière modification par Hizoka (Le 02/07/2010, à 08:55)

Hors ligne

#1063 Le 02/07/2010, à 13:56

kemo006

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Merci pour ces corrections, évidemment il y avait du travail à faire au niveau clarté. Et comme je débute en bash...
Pour le read a, c'est le seul moyen que j'ai trouvé pour bloquer la fenêtre et la garder à l'écran.

Si je comprends bien, ta boucle WHILE permet de ne pas encombrer le script de read à foison?

Dernière modification par kemo006 (Le 02/07/2010, à 14:10)

Hors ligne

#1064 Le 02/07/2010, à 17:05

TheCaméléon

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

J'apporte mon grain de sable à l'édifice !

Je développe en ce moment un script qui :
- récupère automatiquement les pochettes des morceaux
- récupère automatiquement les paroles des morceaux
- envoie automatiquement les infos dans les id3tags
- envoie les paroles vers un iPhone (100% légalement)

J'ai créé ce script, car je n'avais pas trouvé de logiciel (ou script) efficace qui fasse l'équivalent wink

J'ai créé une page dans la doc (GetCovers)
+ http://forum.ubuntu-fr.org/viewtopic.php?pid=3581264#p3581264

Si vous voulez ajouter à la page scripts_utiles, faites comme bon vous semble wink

Hors ligne

#1065 Le 02/07/2010, à 22:15

Hizoka

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

en effet read attend une action, a toi de voir si elle est vraiment importante...

le while permet de lire ainsi
choix 1 => case dessus
puis choix 2 => case...
sans la boucle il ne donnera que la 1ere reponse vu qu'elle contient bien *"home"*

TheCaméléon => je vais y jeter un oeil smile

Hors ligne

#1066 Le 18/07/2010, à 00:03

Chonx

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Salut,

Serait-il possible que quelqu'un crée le script suivant:
J'aimerais avoir un script qui, lorsque je clique dessus, m'ouvre une fenêtre et me demande l'url de la vidéo à télécharger (youtube,...).
De plus, j'aimerais qu'il me télécharge le fichier FLV, le convertisse en AVI et supprime le FLV.

Cela est-il réalisable?

Je vous remercie d'avance.


OS: Ubuntu 10.04 LTS

Hors ligne

#1067 Le 18/07/2010, à 15:19

Levi59

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Un flv peut se lire sur vlc... donc pas nécessaire de le convertir si tu as VLC.

Hors ligne

#1068 Le 19/07/2010, à 09:19

Chonx

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Oui mais c'est pour le réutiliser sur divers supports (PSP, mp4, ...).


OS: Ubuntu 10.04 LTS

Hors ligne

#1069 Le 19/07/2010, à 13:31

Gardouille

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Chonx a écrit :

Salut,

Serait-il possible que quelqu'un crée le script suivant:
J'aimerais avoir un script qui, lorsque je clique dessus, m'ouvre une fenêtre et me demande l'url de la vidéo à télécharger (youtube,...).
De plus, j'aimerais qu'il me télécharge le fichier FLV, le convertisse en AVI et supprime le FLV.

Cela est-il réalisable?

Je vous remercie d'avance.

Ola,

Pas trop le temps de me pencher dessus, mais je te file quand même quelques pistes smile

* le paquet youtube-dl pour télécharger à partir d'une url youtube
* le paquet wget ou axel pour télécharger un fichier dont tu aurais l'adresse directe
* ffmpeg -i fichier.flv new_fichier.avi   pour transformer un flv en avi
* zenity pour afficher des fenêtres de dialogue

T'as tout ce qu'il te faut, ça peut être l'occasion de se plonger dans la rédaction d'un premier script bash tongue

Bon courage


Ubuntu user:24484
Ubuntu counter

Hors ligne

#1070 Le 19/07/2010, à 17:19

Chonx

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Hey un grand merci pour ces infos big_smile

J'ai déjà commencé à faire 2-3 bidouilles de script alors je vais me pencher sur celui-ci!!

Je vous tiens au courant si j'arrive à quelque chose (ça va pas être facile).


OS: Ubuntu 10.04 LTS

Hors ligne

#1071 Le 20/07/2010, à 13:06

Chonx

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Grâce aux différentes étapes que m'a fournit Gardouille j'ai pu faire le script que je souhaitais (ou presque car j'ai toujours un problème de codec pour le mp4 donc la conversion ne se fait qu'en .avi...).

Voici le code en question:

#!/bin/sh

#Récupération de l'URL
url=`zenity --entry --title "Télécharger une vidéo de Youtube" --text "Écrire l'adresse URL de la vidéo:" --width 400`

#Téléchargement du fichier .flv
video=`youtube-dl $url`

#Découpage de l'URL pour obtenir code final
nom=`echo $url | cut -d "=" -f2-`

#Conversion en .avi
ffmpeg -i $nom.flv -f avi $nom.avi

#Suppression du .flv
rm $nom.flv

#Déplacement du fichier dans le dossier voulu
mv $nom.avi /home/... #(choisir le dossier)

#Finalisation
zenity --info --title "Information" --text "La vidéo a été téléchargée, convertie et déplacée." --width 500

OS: Ubuntu 10.04 LTS

Hors ligne

#1072 Le 20/07/2010, à 13:26

Fenouille84

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Bonjour,
quelqu'un connait-il la commande permettant de récupérer le nom du bureau actuel sous OpenBox ?
J'en aurais besoin pour mon script.

Merci pour les renseignements wink


Ma page Deviant Art : conky inside ;-)
.
-- DropBox (online backup) : 2Go + 250 Mo pour vous et moi par parrainage --

Hors ligne

#1073 Le 20/07/2010, à 13:31

Gardouille

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Chonx a écrit :

Grâce aux différentes étapes que m'a fournit Gardouille j'ai pu faire le script que je souhaitais (ou presque car j'ai toujours un problème de codec pour le mp4 donc la conversion ne se fait qu'en .avi...).
...

Petite note, tu peux éventuellement ajouter l'option "-b" à ta ligne youtube-dl pour avoir la meilleure qualité pour ta vidéo téléchargée (cf man youtube-dl).

Pour la conversion en mp4, les quelques tests que j'ai fait me donne une moins qualité que l'avi.
Tiens nous au courant quand tu auras la bonne commande tongue


Ubuntu user:24484
Ubuntu counter

Hors ligne

#1074 Le 20/07/2010, à 14:47

Chonx

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Merci pour l'info smile

Pour ce qui est du .mp4 c'est pour un lecteur mp4 que j'ai acheté à mon frère donc vu la taille de l'écran, la qualité n'a pas besoin d'être vraiment extraordinaire.
Le problème ne vient pas d'une commande car même avec Mobile Media Converter, il me renvoi une erreur de codec ou je ne sais quoi...

J'ai créé un autre topic à ce sujet pour ne pas être HS dans celui-ci:
http://forum.ubuntu-fr.org/viewtopic.php?id=408203


OS: Ubuntu 10.04 LTS

Hors ligne

#1075 Le 24/07/2010, à 12:32

Jarodd

Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)

Bonjour,

Je recherche un script permettant de créer autant de répertoires que de fichiers (le nouveau répertoire portant le même nom que le fichier). Exemple :

1/ J'ai une liste de fichiers :
tata.avi
titi.jpg
toto.pdf
tutu.txt

2/ Je souhaiterais qu'en lançant le script, j'obtienne :
tata/
titi/
toto/
tutu/

3/ Et la cerise sur le gâteau, le fichier serait déplacé vers son homonyme :
tata/tata.avi
titi/titi.jpg
toto/toto.pdf
tutu/tutu.txt

Je ne sais pas si c'est possible... Si ça l'est, j'aimerais bien un fichier très commenté, je voudrais bien comprendre comment cela fonctionne.

Merci pour votre aide smile

Edit : j'aimerais apprendre à faire des scripts basiques, donc je cherche un bon tuto pour apprendre. Je lis celui-ci en ce moment, si vous en connaissez d'autres efficaces, merci de les partager smile

Dernière modification par Jarodd (Le 24/07/2010, à 13:11)


Fixe : 12.04 LTS
Sony Vaio :  14.04 LTS / Windows 8.1

Hors ligne

Haut de page ↑