Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1351 Le 03/03/2011, à 21:26

kurapika29

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

Il y est déjà la lanceur de terminal administrateur wink
Suffit de l'activer dans Système/Préférences/menu principal puis onglet outils système et il est là smile


Disponible sur IRC, sur le serveur irc.freenode.net salon ##ubuntu-voyager (et aussi sur plein d'autre serveur/salon)
Venez si vous avec besoin d'aide ou pour causer ;) suffit d'avoir Xchat ou un autre client IRC
Où sinon en cliquant sur se lien http://kiwiirc.com/client/irc.freenode. … tu-voyager

Hors ligne

#1352 Le 04/03/2011, à 22:51

Stratovarius

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

Bonsoir!
Suite à la demande d'AToMiSeR je me suis essayé à un script qui récupère toutes les adresses e-mail des contacts et les enregistre dans un fichier. Il y a sûrement moyen de faire plus simple avec les sed et j'espère que la forme des fichiers récupérés est la même partout. J'ai testé avec deux adresses différentes et ça marche mais on est jamais à l'abri smile.

#!/bin/bash

dir=`pwd`
username="exemple" #nom d'utilisateur de votre compte (pour exemple@gmail.com mettre "exemple")
password="0123456789" #votre mot de passe
cd /tmp

wget -O auth --post-data "accountType=HOSTED_OR_GOOGLE&Email=$username@gmail.com&Passwd=$password&service=cp&" https://www.google.com/accounts/ClientLogin #récupération de la clé d'authentification
authen=`cat ./auth | grep "Auth" |sed "s/Auth=//g" ` #isole la clé et la place dans la variable
wget -O full.1 --header="Authorization: GoogleLogin auth=$authen" https://www.google.com/m8/feeds/contacts/$username%40gmail.com/full?max-results=1000 #récupération du fichier contenant les contacts (1000 contacts maximum)

cat ./full.1 | sed 's/address=/\n <?/g' |sed 's/entry/\n <?/g' |grep "@" |sed "s/<?'//g" |sed "s/'.*//g" |sed "/<?/d" |awk '{if (x[$0] != "") next ; print $0 ; x[$0]=$0}' > $dir/contacts #mise en forme du fichier, recherche des adresses, isolement des adresses, élimination des doublons et tout ça dans un fichier "contacts" du répertoire qui contient le script

rm -rf auth full.1 #suppression des fichiers temporaires

Je suis évidemment ouvert à tous retours ou critiques! smile

Hors ligne

#1353 Le 05/03/2011, à 12:57

Sinan

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

Merci pour la réponse bonne journée

Hors ligne

#1354 Le 05/03/2011, à 13:12

YannUbuntu

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

Bonjour

Mes premiers scripts bash :
- le Désinstallateur d'OS (pour désinstaller Windows, Mac, Linux..)
- le Réparateur de boot (pour restaurer le MBR, ou reinstaller GRUB)

A connaitre:
- glade2script : pour donner des interfaces évoluées a vos scripts
- LaunchBash : pour mettre vos scripts sur PPA, et créer un DEB


à consulter/améliorer: Guide du Débutant, Logiciels, Ecole, Travail, Maison

Hors ligne

#1355 Le 15/03/2011, à 13:40

le hollandais volant

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

Pratique ce topic ! Je sais pas si le script suivant a été proposée déjà (j'ai omis de parcourir les 28 pages…) mais voici un script simple pour modifier le fond d'écran Gnome à intercale régulier :

#!/bin/bash

dossierimages="$HOME/Images/wallpaper/" # chemin du dossier des images
images_dispo=`ls $dossierimages`

for image_courant in $images_dispo
   do
   gconftool-2 --set /desktop/gnome/background/picture_filename --type string "$dossierimages$image_courant"

   sleep 1800 # durée en seconde
done

Hors ligne

#1356 Le 15/03/2011, à 15:58

nordinatueur

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

À première vue tu vas avoir des problèmes si une image contient une espace.

Essaie :

dossierimages="$HOME/Images/wallpaper/"

IFS=";";
for image_courant in $(ls "${dossierimages}" | sed 's/$/;/g');
... idem ...

Quant à moi je venais poster une amélioration du script de screenshots :
Comme vous le verrez, il n'est pas tout à fait terminé, puisque je pense le rendre plus « performant », plus général.... Rajouter des options, comme le navigateur, etc.

#!/bin/bash 
# 
rouge='\e[31m'; vert='\e[32m'; jaune='\e[33m'; bleu='\e[34m'; rose='\e[35m'; cyan='\e[36m'; gris='\e[37m'; NC='\e[0m';
1>/dev/null which curl || { echo "Curl n'est pas installé"; exit 0 ;};

LOGFILE="/tmp/.${0##*/}.log";
#echo "home:${HOME}, user:${USER}, pwd:${PWD}">${LOGFILE};
NbMaxEssais=3;
LOGURLS="${HOME}/.${0##*/}.log";
SCRIPT_NAME=${0##*/};
continuer=false;
existe_Fichier=false;
until ${continuer}; do
case ${1} in
-e|-E) shift; vim -p ${0}; exit;;
-d|-D) shift; exec 1>${LOGFILE};;
-t|--tineye) shift; ACTION="${ACTION} tineye";;
-u|--upload) shift; ACTION="${ACTION} upload";;
-readlink) shift; readlink ${0} ;;
*) continuer=true ; [[ -e ${1} ]] && existe_Fichier=true;;
esac;
done;

NAVIGATEUR=${NAVIGATEUR:-/usr/bin/chromium-browser};

Navigateur ()
{
case ${NAVIGATEUR} in
#*opera*) /usr/bin/opera --nomail --remote "openURL(${@},new-page)";;
*opera*) echo;;
*) ${NAVIGATEUR} ${@};;
esac;
}

Annulation () { notify-send " ${SCRIPT_NAME}" " ${2}"; exit ${1}; };


if [[ -z ${ACTION} ]]; then
    ACTION=$(zenity --list --checklist --title="Options" --text="Choisissez vos options de traitement:" --height="240" --width="400" --hide-column="2" --column="" --column="" --column="Choix" --separator=" " \
    FALSE "tineye" "Chercher sur TinEye.com" \
    FALSE "conserver" "Conserver l'image." \
    FALSE "upload" "Uploader l'image sur imgur.com" \
    FALSE "upload lienforum" "Uploader une image + lien pour forum." \
    ) || Annulation 1 "Annulation ...";
fi;

if ${existe_Fichier}; then
    SCREENSHOT=${1};
else
    case ${ACTION} in
    *conserver*)
        [[ -d "${HOME}/Bureau" ]] && BUREAU="${HOME}/Bureau" || BUREAU="${HOME}/Desktop";
        SCREENSHOT="${BUREAU}/$(zenity --entry --text="Donnez un nom à votre image ...").jpg" || {
        b=0; while [[ -f "${BUREAU}/screenshot${b}.jpg" ]]; do ((b++)); done;
        SCREENSHOT="${BUREAU}/screenshot${b}.jpg";
        };;
    *)
        rm -f /tmp/screenshot.jpg;
        SCREENSHOT="/tmp/screenshot.jpg";;
    esac;
    SCREENSHOT="${SCREENSHOT:-/tmp/screenshot.jpg}";
    #Prendre un photo ...
    OK=false; i=0; until ${OK} || [[ ${i} -ge ${NbMaxEssais} ]]; do ((i++));
        scrot -s -q 100 -d 1 "${SCREENSHOT}";
        gpicview "${SCREENSHOT}" &
        zenity --question --text="Cette photo vous convient-elle ? ${i}/${NbMaxEssais}" && OK=true || rm -f ${SCREENSHOT};
        ps x | grep "gpicview" | grep "${SCREENSHOT}" | awk "{print \$1}" | xargs kill
    done;
    [[ -f "${SCREENSHOT}" ]] || Annulation 1 "Pas de screenshot effectué";
fi;

#Actions diverses
case ${ACTION} in
*tineye*)
    URL="$( 2>/dev/null curl http://www.tineye.com/search -H "Expect:" -F image=@"${SCREENSHOT}" -F submit=Upload | sed -nr '/<a[^>]+>/s/.*href="([^"]+)".*/\1/p' )" ;
    {
        Navigateur ${URL};
        printf "${URL}" | xsel -i -b ; printf "${URL}" | xclip -i ;
    } &
;;&
*upload*)
    URL=$( 2>/dev/null curl -F "image"=@"${SCREENSHOT}" -F "key"="5d317f0bee23b282473522e1aa68f621" http://imgur.com/api/upload.xml | sed -n 's|.*<original_image>\([^<]*\)</original_image>.*|\1|p')
    printf "${URL}" | xsel -i -b ; printf "${URL}" | xclip -i ;
    echo "$(date);${URL}" >> "${LOGURLS}";
    Navigateur ${URL};
;;&
*lienforum*)
    printf "[url=${URL}][img]${URL%.*}s.${URL##*.}[/img][/url]\n[url=${URL}][img]${URL%.*}l.${URL##*.}[/img][/url]" | xsel -i -b ;
    printf "[url=${URL}][img]${URL%.*}s.${URL##*.}[/img][/url]\n[url=${URL}][img]${URL%.*}l.${URL##*.}[/img][/url]" | xclip -i ;
;;
esac;

Linux User #508094
Pour une meilleure coopération, utilisez des liens relatifs sur le forum !

Hors ligne

#1357 Le 16/03/2011, à 18:28

Saintvincent

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

Bonjour à tous,

Voilà un petit script qui m'a bien aidé pour passer de la sortie SVideo de mon portable vers ma télé en RCA

#!/bin/sh

xrandr --output S-video --set load_detection 1
xrandr --output S-video --set tv_standard ntsc
xrandr --addmode S-video 800x600
xrandr --output S-video --same-as VGA-0
xrandr --output S-video --mode 800x600

Hors ligne

#1358 Le 18/03/2011, à 16:59

Levi59

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

J'ai écrit un petit script pour être notifié des nouveau messages directement filtrés dans les dossiers locaux. J'aurais besoin d'aide pour trouver le motif correspondant aux dossiers non lus...
http://forum.ubuntu-fr.org/viewtopic.php?id=446152

Hors ligne

#1359 Le 05/04/2011, à 07:22

sdblepas

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

Salut à tous
J'ai une demande de script, je ne veux pas tout le script mais juste une direction pour pouvoir le commencer.
Je voudrais faire un script qui scan un dossier (avec sous dossier) ou j'ai des videos (AVI|MPEG4|MKV) de la Music (MP3|FLAC|MIDI) des ebook (PDF|EPUB|MOBI) et qui lise les métadata de ces fichiers pour en créer un xml.
Dans le xml il y aurait à chaque fois toutes mes vidéos ou toutes mes Musique …
Pour résumer :
1 Fichier Vidéo
1 Fichier Musique
1 Fichier Ebook
Pour le xml en plus de la metadata lu il faudrait le full path pour l'acces.
Merci

Dernière modification par sdblepas (Le 05/04/2011, à 17:15)

Hors ligne

#1360 Le 08/04/2011, à 16:59

poloflip

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

Bonjour a tous.
Ceci est mon premier message sur le forum Ubuntu smile

Je vous propose quelques petits scripts que j'ai créé. Au sommaire :
- Analyser et vider le cache suivant sa taille.
- Modifier les profils du processeur (powersave , performance, ondemand)
- Killer un processus.

Tous les scripts suivant sont a copier dans /bin/

Il convient d'appliquer une modification des droits sur les scripts :

chmod +x nomduscript

Analyser et vider le cache suivant sa taille

J'ai créé ce script car j'ai trouvé un problème sur ubuntu. Quand on lis certaines données a partir du NTFS (.mkv, mp3, etc) ces données se mettent aussi dans le cache.
Ce script s'exécute au démarrage et a pour but de controler la valeur du cache.
Si cette valeur est supérieure a 1800000 Octets, alors le cache sera vidé.

#! /bin/bash

clear
i=1
while [ $i -eq 1 ]; do

cache=$(free | awk {'print $3'} | head -n 2 | tail -n 1)
if [ $cache -gt '1800000' ]; then
    echo "Vidage du cache de la mémoire RAM"
    echo "1" > /proc/sys/vm/drop_caches
    echo "0" > /proc/sys/vm/drop_caches
    sleep 600 ;
    i=1
else    
    sleep 100 ;
fi    
    i=1
clear
done

Ensuite, pour éxecuter ce script au démarrage, il vous suffit de modifier le fichier rc.local

Pour ce , tapez la commande suivante dans le terminal

sudo nano /etc/rc.local

Enfin, ajoutez la ligne suivante, juste avant "exit 0" :

/bin/vcache


See you space cowboy  smile

Dernière modification par poloflip (Le 08/04/2011, à 23:27)


See you space cowboy

Hors ligne

#1361 Le 08/04/2011, à 22:35

YannUbuntu

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

@poloflip : pour un 1er message tu es deja bien prolifique !  bienvenue parmi nous smile


à consulter/améliorer: Guide du Débutant, Logiciels, Ecole, Travail, Maison

Hors ligne

#1362 Le 08/04/2011, à 22:37

poloflip

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

Merci, et de rien.
On a appris a scripter dans notre école, et j'ai eu plein d'idées, je les met donc a portée de tous.
Sachant que c'est du script assez simple ...

Tu en penses quoi ?


See you space cowboy

Hors ligne

#1363 Le 08/04/2011, à 23:05

YannUbuntu

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

que tu as de l'avenir wink
et tu devrais lire le post #1 de cette discussion afin de mettre tes scripts dans la age de Doc qui va bien.


à consulter/améliorer: Guide du Débutant, Logiciels, Ecole, Travail, Maison

Hors ligne

#1364 Le 08/04/2011, à 23:17

poloflip

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

Modifier les profils du processeur (powersave , performance, ondemand)

J'ai créé ce script, car possédant un I5, il était assez long de modifier les 4 coeurs via l'applet "Moniteur de changements de fréquence du processeur"
Le bout de code suivant va donc modifier les paramètres des 4 coeurs en même temps.

"powersave" correspond a la plus basse fréquence du processeur.
"ondemand" correspond a un schéma d'utilisation global. Le système décide lui même de la fréquence des processeurs.
"performance" correspond a la fréquence la plus élevée connue par le processeur.

#! /bin/bash

clear
echo "Modifier la frequence des processeurs"
echo "1 - Economie d'energie"
echo "2 - Sur demande"
echo "3 - Performance"
read choice

case "$choice" in
    1)
        echo "powersave" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
        echo "powersave" > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
        echo "powersave" > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
        echo "powersave" > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor
    ;;
    2)
        echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
        echo "ondemand" > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
        echo "ondemand" > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
        echo "ondemand" > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor
    ;;
    3)
        echo "performance" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
        echo "performance" > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
        echo "performance" > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
        echo "performance" > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor
    ;;
esac

Il convient bien que, ce script est adapté pour les processeurs possedant 4 coeurs.
Si vous en possedez moins, ou plus, il vous suffit de rajouter/retirer une ligne dans chaque cas.
Pour connaitre vos nombres de coeurs, tapez la commande suivant

ls /sys/devices/system/cpu | grep cpu

Il vous suffit de modifier en cpu1 ou cpu6, etc...

See you space cowboy

Dernière modification par poloflip (Le 08/04/2011, à 23:32)


See you space cowboy

Hors ligne

#1365 Le 08/04/2011, à 23:28

poloflip

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

Killer un processus

Le code suivant est assez simple, mais il évite a chaque fois de faire un ps aux | grep nomduprocessus suivi d'un kill ID.

#! /bin/bash

clear
read -p "Nom du processus a kill : " ID
ps aux | grep $ID
read -p "ID du processus a kill : " ID
kill -9 $ID

Voila , j'ai aussi un autre script qui permet de manager les interfaces réseaux.
Il m'est seulement utile pour désactiver les connexions vmware.

Je la posterai si ca interresse certaines personnes.

See you space cowboy  smile


See you space cowboy

Hors ligne

#1366 Le 08/04/2011, à 23:33

wido

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

plus court:

killall nomduprogramme

Hors ligne

#1367 Le 08/04/2011, à 23:37

poloflip

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

Bah si tu as une instace spécifique, par exemple en ssh , tu est dans le caca , non ? smile


See you space cowboy

Hors ligne

#1368 Le 09/04/2011, à 06:07

redo_fr

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

Salut,

@poloflip

Tous les scripts suivant sont à copier dans /bin/

c'est pas une très bonne idée ^_^
Pour les petits scripts "maison", il est plus propre de les séparer des binaires système
Le mieux est, par exemple, de se créer un répertoire 'outils' dans son HOME et de l'ajouter à son PATH dans le .bash_profile

le kill -9 ne devrait vraiment être employé qu'en dernier recours, car cela force l'arrêt brutal d'un programme, laissant ses éventuels sous programes, fichiers, et autres liaisons ouverts.

Toujours commencer par un kill -15 (demande de fermeture) et si cela ne fonctionne pas alors, tenter le kill -9 (arrêt immédiat)

Dernière modification par redo_fr (Le 09/04/2011, à 06:12)


Il n'y a pas de mauvais outils, il n'y a que de mauvais ouvriers
- papy -
Personnellement, je crois que faire des procès est un signe que les affaires vont mal. Je ne dis pas que Microsoft va mal, ce n'est qu'un signe, pas un indicateur...
- Linus Torvalds -

Hors ligne

#1369 Le 09/04/2011, à 08:38

poloflip

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

Merci pour ta réponse instructive smile

Je vais optimiser tout ca, et je MAJerais le post une fois fait.


See you space cowboy

Hors ligne

#1370 Le 09/04/2011, à 09:34

beware

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

Salut polo et merci pour tes scripts. Petite question concernant le script qui vide le cache. Je ne vois pas l'intérêt de cette partie :

while [ $i -eq 1 ]; do
   [...]
    sleep 600 ;
    i=1
else    
    sleep 100 ;
fi    
    i=1
clear

Si je comprends bien i est de toute facon égale à 1 à la fin de la boucle while. Si c'est le cas, aucun interêt a rajouter la ligne 'i=1' dans la premiere boucle if.

Hors ligne

#1371 Le 09/04/2011, à 10:15

poloflip

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

C'est pour etre sur que l'on ne sorte pas de la boucle.
C'est inutile, mais j'ai préféré le rajouter.
D'ailleur je l'ai retiré hier soir en m'en rendant compte je crois smile


See you space cowboy

Hors ligne

#1372 Le 09/04/2011, à 10:19

redo_fr

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

À mon tour de proposer un petit script rapide.

Pour celles et ceux qui utilisent kvm, voici un script permettant de monter et démonter les images disque qemu lorsque la VM est "off"

#! /bin/bash
# -*- coding: utf-8 -*-
  
# =========
# Fonctions
_usage() {
      echo "SYNTAXE"
      echo "  ${prog} <image qemu>"
      echo "  ${prog} -u"
      echo " "
      echo "OPTIONS"
      echo "  <image qemu>: Nom de l'image a monter."
      echo "  -u          : Demontage de l'image precedemment montee."
      echo " "
      echo "EXEMPLE"
      echo "  mount-img /var/lib/libvirt/ubuntu_11.04.img"
}
 
mountImg() {
    local img="${1}"
    losetup /dev/${mountDev} ${img}
    kpartx -av /dev/${mountDev}
    mount /dev/mapper/${mountDev}p1 ${mountPoint}
}
  
 umountImg() {
     umount ${mountPoint}
     kpartx -dv /dev/${mountDev}
     losetup -d /dev/${mountDev}
 }
 
# ==============
# Bloc principal
prog=`basename ${0}`
myDir=`dirname ${0}`
myPid=${$}

[[ ${1} = '' ]] && _usage && exit 1


MountPoint='/mnt'
MountDev='loop0'

op='mount'
[[ ${1} = '-u' ]] && op='umount' && shift

img=${1}
[[ ! -f ${img}  ]] && _usage && exit 1
 
case ${op} in
    mount)
        mountImg ${img}
         ;;
    umount)
        umountImg
        ;;
    *)
        shift
        ;;
 esac
  
 # Fin du script
 # =============

Dernière modification par redo_fr (Le 09/04/2011, à 10:22)


Il n'y a pas de mauvais outils, il n'y a que de mauvais ouvriers
- papy -
Personnellement, je crois que faire des procès est un signe que les affaires vont mal. Je ne dis pas que Microsoft va mal, ce n'est qu'un signe, pas un indicateur...
- Linus Torvalds -

Hors ligne

#1373 Le 09/04/2011, à 12:42

beware

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

Bonjour,

J'ai besoin d'un petit script pour redimensionner des images. Jusque la je sais le faire. Mais j'aurais voulu savoir s'il était possible de redimensionner une image suivant 1 seule variable (par exemple en fixant la hauteur) et en gardant la bonne proportion de l'image?

Hors ligne

#1374 Le 09/04/2011, à 13:00

Hizoka

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

oui : convert -resize x600 img_in img_out


KDE Neon 64bits
Tous mes softs (MKVExtractorQt, HizoSelect, HizoProgress, Qtesseract, Keneric, Services menus...) sont sur github

Hors ligne

#1375 Le 09/04/2011, à 14:11

beware

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

Merci beaucoup Hizoka.

Hors ligne