#926 Le 04/03/2010, à 17:35
- MiNiShOoTeR
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
...
Merci pour tes conseils.
Et oui, je ne connais quasi pas le Bash... donc c'est possible que le code ne soit pas du tout optimisé et complétement bidon, désolé.
J'ai juste voulu essayer en fait, et j'ai réussi à avoir un résultat qui marchait à peu près, j'avais pas vraiment d'autres prétentions...
En tout cas, merci pour tes conseils!
EDIT : Mais je ne pensais tout de même pas que le code étais aussi mal pensé vu que je me suis basé à 95% sur un script provenant d'un tutoriel d'apprentissage du Bash...^^
Dernière modification par MiNiShOoTeR (Le 04/03/2010, à 17:42)
Hors ligne
#927 Le 04/03/2010, à 18:35
- black_bird
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
merci __n1c0 pour les critiques construstives, je suis ici pour apprendre et pas pour dire des conneries
Hors ligne
#928 Le 08/03/2010, à 14:01
- iddouch
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
edit modo : merci de respecter les règles du forum tu as déjà un fil ouvert à ce sujet
Dernière modification par nesthib (Le 08/03/2010, à 18:44)
Hors ligne
#929 Le 08/03/2010, à 18:16
- Levi59
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
edit modo
Et la question est?
Je sais je joue un peu au c** mais on va pas tout faire pour toi tu sais... Commence par faire ton propre script et ensuite on verra pour te corriger.
Mais il sera alors préférable que tu ouvres ton propre fil.
Dernière modification par nesthib (Le 08/03/2010, à 18:45)
Hors ligne
#930 Le 08/03/2010, à 19:05
- draco31.fr
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
edit modo : merci de respecter les règles du forum tu as déjà un fil ouvert à ce sujet
A ceux qui souhaiterait t'apporter de l'aide, voici le topic sus-cité : Projet à regler
Hors ligne
#931 Le 08/03/2010, à 21:23
- 2F
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
Bonjour,
pour ceux qui connaisent l'excellent "explorateur de fichier" web AjaXplorer
l'ayant moi même à la maison j'ai trouver utile de prévenir les gens lorsque un upload a été fait. Je débute en bash donc certainement qu'on peut faire mieux et plus simple, mais .. ça fonctionn
fichiers ci joint le premier à lancer avec cron c'est mieux
#on prends le dernier log
var=`tail -n 50 /var/www/ton-site.com/server/logs/log_$(date +%m-%d-%y).txt |grep Upload > /tmp/mailsiupload`
#on vérifie si le fichier est vide sinon mail
if [ -s /tmp/mailsiupload ] ; then
echo "plein, j'envoie un mail !"
/home/toi/scripts/mail.sh |openssl s_client -crlf -connect smtp.gmail.com:465
#printf '%s\n' "$var"
rm /tmp/mailsiupload
else
echo "vide, je fais rien !"
rm /tmp/mailsiupload
#printf '%s\n' "$var"
fi ;
et le deuxième (mail.sh) qui s'occupe d'envoyer le mail, moi c'est sur gmail, avec openssl, pour le autres fournisseurs le telnet fonctionne je pense.
var=`sed -e s/^[^=]*=// /tmp/mailsiupload`
sleep 2
echo "HELO"
sleep 2
echo "AUTH LOGIN"
sleep 2
echo "ton adresse mail@gmail en base-64"
sleep 2
echo "ton pass en base-64"
sleep 2
echo "MAIL FROM: <ton adresse en clair@gmail.com>"
sleep 2
echo "rcpt to: <destinataire1@gmail.com>"
sleep 2
echo "rcpt to: <destinataire2@gmail.com>"
sleep 2
echo "rcpt to: <destinataire3@gmail.com>"
sleep 2
echo "rcpt to: <destinataire4@gmail.com>"
sleep 2
echo "DATA"
sleep 2
echo "Subject: Des fichiers ont été mis sur le serveur ton site.com"
sleep 1
echo ""
sleep 1
echo ""
echo "Voici la liste:"
sleep 1
echo ""
sleep 1
echo "$var"
sleep 2
sleep 2
echo ""
echo "http://ton site.com"
sleep 1
echo "."
sleep 2
echo "QUIT"
Voilà, ça m'a évité d'installer un serveur mail dont je n'avais pas l'utilité.
Hors ligne
#932 Le 08/03/2010, à 21:49
- rmy
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
Hop, à mon tour.
Voici mon premier script bash, rien de transcendant, et surtout pas encore fini bien que déjà fonctionnel. Je code avec un bout de cerveau et les doigts de pieds, c'est sans doute pas très "normé". J'aimerais bien que vous jetiez un oeil pour l'améliorer ou me proposer des pistes. Il y a aussi toute la première partie concernant la vérification de l'existance et de la cohérence des variables que je ne maîtrise pas du tout...
Résumé : Script comparant trois dossiers de manière récursive, afin de vérifier l'existence des fichiers quelque part dans l'un ou l'autre (ou 2, ou 3...) dossiers. Il est utile pour vérifier où l'on en est des sauvegardes quand on a eu tendance par exemple à faire des backups frénétiques mais pas organisés... Parfois certains fichiers apparaissent 10 fois, avec des noms différents, alors que d'autres que l'on pensait avoir sauvegardé ne sont lus qu'à un seul endroit.
#!/bin/bash
# comparmy créé le 1/03/2010 par rmy
# Licence CC-BY-SA
# sabatier "point" remy "at" free "point" fr
# comparaison récursive de trois dossiers pour aider à organiser les sauvegardes
# brouillon par rmy, à améliorer grandement. Peut-être ce type d'outil existe-t-il déjà, mais je n'ai pas trouvé mon bonheur. C'est mon premier script bash, améliorez-le...
# Usage :
# comparmy.sh dossier1 dossier2 dossier3
# Objet : comparaison complète de chacun des dossiers pour trouver les doublons de l'un à l'autre. Peut-être utile pour gérer les sauvegardes...
# à optimiser probablement en utilisant join ou comm
# à améliorer en vérifiant l'existance de doublons dans chaque dossier lui-même
# à améliorer en proposant des options pour rendre la sortie utilisable -> uniquement les md5, uniquement un cas de figure précis... pour l'utiliser par exemple sur de la copie ou supression automatisée...
# Prévoir vérification de présence de 3 dossiers ou prendre un fichier vide si manquant et suppression des fichiers temporaires (que l'on peut conserver avec une option à passer)
#Créer un dossier pour stockage des fichiers temporaires
mkdir .comparmy
#Créer fichiers listes md5 et liste complète
find $1 -type f -print0 | xargs -0 md5sum |tee .comparmy/full.md5 | cut -c -32 > .comparmy/$1.md5
find $2 -type f -print0 | xargs -0 md5sum |tee -a .comparmy/full.md5 | cut -c -32 > .comparmy/$2.md5
find $3 -type f -print0 | xargs -0 md5sum |tee -a .comparmy/full.md5 | cut -c -32 > .comparmy/$3.md5
#Trier fichiers listes md5
cd .comparmy
sort $1.md5 > $1.md5.sorted
sort $2.md5 > $2.md5.sorted
sort $3.md5 > $3.md5.sorted
sort full.md5 > full.md5.sorted
#Comparer les fichiers listes md5 pour retourner :
# Les doublons dans $1, les doublons dans $2 les doublons dans $3 << pas implémenté, à prévoir
# Les fichiers qui n'existent que dans $1, que dans $2, que dans $3
# Les fichiers qui n'existent que dans $1et$2, que dans $1et$3, que dans $2et$3
# Les fichiers qui existent dans les trois
#dans $1, pas dans $2
diff $1.md5.sorted $2.md5.sorted | grep '<' | cut -c 3- > anotb.diff
#dans $2, pas dans $1
diff $1.md5.sorted $2.md5.sorted | grep '>' | cut -c 3- > bnota.diff
#dans $1et$2
diff $1.md5.sorted anotb.diff | grep '<' | cut -c 3- > aandb.diff
#dans $1, pas dans $3
diff $1.md5.sorted $3.md5.sorted | grep '<' | cut -c 3- > anotc.diff
#dans $3, pas dans $1
diff $1.md5.sorted $3.md5.sorted | grep '>' | cut -c 3- > cnota.diff
#dans $1et$3
diff $1.md5.sorted anotc.diff | grep '<' | cut -c 3- > aandc.diff
#dans $2, pas dans $3
diff $2.md5.sorted $3.md5.sorted | grep '<' | cut -c 3- > bnotc.diff
#dans $3, pas dans $2
diff $2.md5.sorted $3.md5.sorted | grep '>' | cut -c 3- > cnotb.diff
#dans $2et$3
diff $2.md5.sorted bnotc.diff | grep '<' | cut -c 3- > bandc.diff
#dans $1 seult
diff anotb.diff $3.md5.sorted | grep '<' | cut -c 3- > aseult.diff
#dans $2 seult
diff bnota.diff $3.md5.sorted | grep '<' | cut -c 3- > bseult.diff
#dans $3 seult
diff cnota.diff $2.md5.sorted | grep '<' | cut -c 3- > cseult.diff
#dans $1et$2 mais pas $3
diff aandb.diff $3.md5.sorted | grep '<' | cut -c 3- > abseul.diff
#dans $1et$3 mais pas $2
diff aandc.diff $2.md5.sorted | grep '<' | cut -c 3- > acseul.diff
#dans $2et$3 mais pas $1
diff bandc.diff $1.md5.sorted | grep '<' | cut -c 3- > bcseul.diff
#dans les trois
diff aandb.diff abseul.diff | grep '<' | cut -c 3- > tous.diff
#fichier de sortie :
echo "****************DANS TOUS" > retour
while read line
do
echo $line >> retour
cat full.md5 | grep $line | cut -c 33- >> retour
done < tous.diff
echo "****************DANS $1 SEULEMENT" >> retour
while read line
do
echo $line >> retour
cat full.md5 | grep $line | cut -c 33- >> retour
done < aseult.diff
echo "****************DANS $2 SEULEMENT" >> retour
while read line
do
echo $line >> retour
cat full.md5 | grep $line | cut -c 33- >> retour
done < bseult.diff
echo "****************DANS $3 SEULEMENT" >> retour
while read line
do
echo $line >> retour
cat full.md5 | grep $line | cut -c 33- >> retour
done < cseult.diff
echo "****************DANS $1 ET $2 SEULEMENT" >> retour
while read line
do
echo $line >> retour
cat full.md5 | grep $line | cut -c 33- >> retour
done < abseul.diff
echo "****************DANS $1 ET $3 SEULEMENT" >> retour
while read line
do
echo $line >> retour
cat full.md5 | grep $line | cut -c 33- >> retour
done < acseul.diff
echo "****************DANS $2 ET $3 SEULEMENT" >> retour
while read line
do
echo $line >> retour
cat full.md5 | grep $line | cut -c 33- >> retour
done < bcseul.diff
cat retour
récupération de données: vrac–topic unique–mon site pro pour les particuliers : www.diskcard.fr– Je recycle volontiers tous vos disques durs HS (ou pas).
Le site pro pour les pros, spécialiste recupération de données RAID, NAS et serveurs: www.vodata.fr
Hors ligne
#933 Le 08/03/2010, à 21:59
- nesthib
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
@rmy : as-tu testé fdupes ?
GUL Bordeaux : Giroll – Services libres : TdCT.org
Hide in your shell, scripts & astuces : applications dans un tunnel – smart wget – trouver des pdf – install. auto de paquets – sauvegarde auto – ♥ awk
⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdn
Hors ligne
#934 Le 08/03/2010, à 23:42
- rmy
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
@nesthib, merci. C'est effectivement à ça que je pensais quand j'ai fait mon script : impossible de retrouver comment ça s'appelait. Puis ensuite j'ai amélioré un peu l'idée : je ne cherche plus seulement les doublons, mais je fais aussi le tri pour savoir quels fichiers appartiennent à quels repertoires. Finalement d'ailleurs ce qui me manque c'est juste le traitement des doublons au sein d'un seul répertoire.
récupération de données: vrac–topic unique–mon site pro pour les particuliers : www.diskcard.fr– Je recycle volontiers tous vos disques durs HS (ou pas).
Le site pro pour les pros, spécialiste recupération de données RAID, NAS et serveurs: www.vodata.fr
Hors ligne
#935 Le 09/03/2010, à 00:38
- wido
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
Script pour télécharger les musiques du site westonemusic.com.
Après vous êtes responsable de ce que vous faites.
#!/bin/bash
#Date 08/03/2010
# récupérer les musiques provenant du site: westonemusic.com
# Ce script est à titre d'exemple, je ne suis pas responsable de vos actes.
###############################################
# Dossier image:
DOSSIER=/$USER/westonemusic
# West one Music : WOM
# exemple:
# PHM ou WOM
LABEL=WOM
# exemple:
# NumeroAlbum=0172
NumeroAlbum=0002
# Musique de 1 à 9
[ -d "$DOSSIER/$LABEL/$NumeroAlbum" ] || mkdir -p "$DOSSIER/$LABEL/$NumeroAlbum/"
cd $DOSSIER/$LABEL/$NumeroAlbum/
for ((i=1 ; 10 - $i ; i++))
do
echo "http://www.westonemusic.com//media/mp3/128kbps/"$LABEL"_"$LABEL"_"$NumeroAlbum"_00"$i"01.mp3"
wget -c http://www.westonemusic.com//media/mp3/128kbps/"$LABEL"_"$LABEL"_"$NumeroAlbum"_00"$i"01.mp3
done
# Musique 10 à 50
for ((i=10 ; 50 - $i ; i++))
do
echo "http://www.westonemusic.com//media/mp3/128kbps/"$LABEL"_"$LABEL"_"$NumeroAlbum"_0"$i"01.mp3"
wget -c http://www.westonemusic.com//media/mp3/128kbps/"$LABEL"_"$LABEL"_"$NumeroAlbum"_0"$i"01.mp3
done
# effacer les fichiers ayant la taille de 13205 octet
ls -l $DOSSIER/$LABEL/$NumeroAlbum/ | grep 13205 | awk '{print $9}' >> /tmp/fake_$NumeroAlbum.log
cd $DOSSIER/$LABEL/$NumeroAlbum/
while read fake
do
rm ./$fake
done < /tmp/fake_$NumeroAlbum.log
rm /tmp/fake_$NumeroAlbum.log
exit 0
Hors ligne
#936 Le 09/03/2010, à 16:43
- Levi59
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
J'ai écrit ce petit morceau de code pour automatiquement télécharger et installer les clés des ppa lors par exemple de la première mise à jour après une installation.
#!/bin/bash
######################################
#Ce script permet de faire la mise à jour de la liste des paquets et de régler les problème de clés en une fois.
######################################
exec 3>&1
key=`sudo apt-get update 2>&1 > $(tty) | grep '[0-9A-Z]\{16\}' | awk -F'NO_PUBKEY ' '{ print $2 }' | rev | cut -c 1-8 | rev`
exec 3>&-
echo $key
if [ -n "$key" ]; then
echo "Il semble que vous n'avez pas toutes les clés d'authentification"
echo "Les clefs GPG sont nécessaires pour les dépôts afin de garantir l’authenticité de la connexion"
question="faux"
until [ "$question" != "faux" ]; do
echo -n "Voulez vous récupérer les clefs? (Oui/Non)"
read question
case "$question" in
oui | o | O | Oui | OUI )
for i in $key; do
gpg --keyserver hkp://keyserver.ubuntu.com:11371 --recv-key $i
gpg -a --export $i | sudo apt-key add -
done
sudo apt-get update
;;
non | n | N | Non | NON )
echo "Pas de récupération de(s) la clé(s)."
;;
*)
echo "réponse erronée"
question="faux"
esac
done
else
echo "Mise à jour effectuée!"
fi
exit 0
Hors ligne
#937 Le 11/03/2010, à 22:00
- wlourf
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
Script pour récupérer les images des flux RSS de deviantArt : get_deviation_search.sh, si vous avez des commentaires sur le code n'hésitez pas, je suis pas bien fort en expressions régulières ! Et j'espère que je n'ai pas réinventé la roue sinon ça m'aura fait un bon exercice!
Exemple de paramètres pour récupérer les nouvelles images de la section Photomanipulation & Wallpapers:
./get_deviation_search.sh /home/wlourf/images/ 5 http://backend.deviantart.com/rss.xml?q=in%3Acustomization/wallpaper%20sort%3Atime\&type=deviation http://backend.deviantart.com/rss.xml?q=in%3Adigitalart/photomanip%20sort%3Atime\&type=deviation
Comme c'est long, c'est sûr qu'il est plus interessant de placer la ligne ci-dessus dans un autre script bash !
Ca fonctionne aussi avec une recherche personnalisée car chaque résultat de recherche sur deviantArt génère un flux RSS en bas des résultats de recherche. Exemple, si vous êtes fans de, au hasard, Ubuntu, faites une recherche sur Ubuntu, cliquez sur "Newest" et copiez l'adresse du lien RSS en bas de page :
http://backend.deviantart.com/rss.xml?q=sort%3Atime%20ubuntu&type=deviation
mais pour être utilisé dans le script, il fut remplacer & par \& à moins que quelqu'un ait une autre solution :
http://backend.deviantart.com/rss.xml?q=sort%3Atime%20ubuntu\&type=deviation
le script :
#! /bin/bash
#Ce script récupère des images des flux RSS de deviantArt : get_deviation_search.sh
#
# par wlourf http://u-scripts.blogspot.com/
# v1.0 - 02 Feb. 2010
#
#1er argument : chemin où enregistrer les images
#2eme argument : délai pour répéter le script (mettre 0 pour ne lancer qu'une seule fois)
#3ème argument et suivants : les liens RSS a récupérer penser à remplacer & par \&
#quelques paramètres
file1=/tmp/get_deviant_rss.txt
file2=/tmp/get_liste.txt
#afficher les noms des fichiers nons sauvés (c'est à dire déjà sauvés précedemment)
display_files_not_saved=false
#this le script est lancé dans gnome-terminal, clic droit peut ouvrir le fichier si paramètre ci-dessous = true
display_files_with_link=true
############################# end ###########################
clear
if [[ $# -lt 3 ]]; then
echo "Ce script à besoin de 3 arguments : "
echo " - chemin du répertoire où sauver les images"
echo " - délai pour répéter le script (mettre 0 pour ne lancer qu'une seule fois)"
echo " - les liens RSS a récupérer, penser à remplacer & par \&"
exit
fi
folder=$1
repeat=$2
args=$*
rss=${args#$1" "}
rss=${rss#$2" "}
nbUrl=0
if [[ {$folder:-1} != "/" ]]; then
folder="$folder/"
fi
for url in $rss
do
((nbUrl++))
tabRSS[$nbUrl]=$url
done
nbLoops=0
flag=true
while ( $flag ); do
echo "-------------------"
echo "répertoire = "$folder
echo "-------------------"
echo "boucle toutes les $repeat minutes"
echo "-------------------"
((nbLoops++))
mkdir -p $folder
cd $folder
for ((u=1 ; u<=$nbUrl ; u++))
do
#read one rss feed
echo "-------------------"
echo "rss $u/$nbUrl = "${tabRSS[u]}
GET ${tabRSS[u]} > $file1
#extract the link to the fullview image
match="medium=\"image\""
url_line=""
begin="http"
end="\" height"
table=()
idx=1
#put the links in a table for better display
while read line
do
if [[ "$line" =~ "${match}" ]]; then
url_line=$line
a=$(($(expr "$url_line" : ".*$begin")-${#begin}))
b=$(($(expr "$url_line" : ".*$end")-$a-${#end}))
url_link=${url_line:$a:$b}
table[$idx]=$url_link
((idx++))
fi
done < $file1
#read the table ans save the image if not already saved
nbLinks=$(($idx-1))
nbSaved=0
for ((a=1 ; a<=$nbLinks ; a++))
do
link=${table[a]}
img_name=$(expr match "$link" '.*\(/.*\)')
img_name=${img_name:1}
txt="loop $nbLoops - url $u - $a/$nbLinks"
if ($display_files_with_link) then
strFile="file://"$folder$img_name
else
strFile=$img_name
fi
if [ -f "$img_name" ]; then
if ($display_files_not_saved) then
echo ""$txt" - *** "$strFile" *** déjà sauvé"
fi
else
echo $txt" - "$strFile
wget -q $link
((nbSaved++))
fi
done
echo
echo "$nbSaved/$nbLinks images sauvées pour boucle numéro $nbLoops et rss= $url"
echo "-------------------"
echo
done
if [[ $repeat -eq "0" ]]; then
flag=false
fi
nows=$(date +%s)
waitto=$(($nows+$repeat*60))
sl=$(($waitto-$nows))
echo "Attente $((sl/60)) minutes jusqu'à :"
date --date "$sl sec"
sleep $sl
done
echo
echo "Terminé! après $nbLoops boucle(s)"
Hors ligne
#938 Le 12/03/2010, à 13:42
- yamo
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
Salut,
Script pour récupérer les images des flux RSS de deviantArt : get_deviation_search.sh, si vous avez des commentaires sur le code n'hésitez pas, je suis pas bien fort en expressions régulières ! Et j'espère que je n'ai pas réinventé la roue sinon ça m'aura fait un bon exercice!
Exemple de paramètres pour récupérer les nouvelles images de la section Photomanipulation & Wallpapers:
./get_deviation_search.sh /home/wlourf/images/ 5 http://backend.deviantart.com/rss.xml?q=in%3Acustomization/wallpaper%20sort%3Atime\&type=deviation http://backend.deviantart.com/rss.xml?q=in%3Adigitalart/photomanip%20sort%3Atime\&type=deviation
J'en suis à la boucle 10 soit 600 photos, ça a une fin?
Pour le script sur les PPA, je suis intéressé mais je ne le comprend pas trop donc je n'ose pas l'utiliser.
Stéphane
--
Debian 9 XFCE Xubuntu 16.04.2 - #ubuntu sur freenode
sudo / matrix
Hors ligne
#939 Le 12/03/2010, à 18:10
- Levi59
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
Pour le script sur les PPA, je suis intéressé mais je ne le comprend pas trop donc je n'ose pas l'utiliser.
ca permet de chercher automatiquement les clés de ppa quand ceux ci sont absent... Rien de plus!
Hors ligne
#940 Le 12/03/2010, à 18:19
- wlourf
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
Salut,
wlourf a écrit :Script pour récupérer les images des flux RSS de deviantArt : get_deviation_search.sh, si vous avez des commentaires sur le code n'hésitez pas, je suis pas bien fort en expressions régulières ! Et j'espère que je n'ai pas réinventé la roue sinon ça m'aura fait un bon exercice!
Exemple de paramètres pour récupérer les nouvelles images de la section Photomanipulation & Wallpapers:
./get_deviation_search.sh /home/wlourf/images/ 5 http://backend.deviantart.com/rss.xml?q=in%3Acustomization/wallpaper%20sort%3Atime\&type=deviation http://backend.deviantart.com/rss.xml?q=in%3Adigitalart/photomanip%20sort%3Atime\&type=deviation
J'en suis à la boucle 10 soit 600 photos, ça a une fin?
Bah non c'est sans fin le script s'execute toutes les 5 minutes avec la commande ci-dessus et ne télécharge que les nouvelles images (60 par flux), donc à la fin de la première boucle tu en as 120, ensuite, ça dépend des nouveautés postées sur dA.
Je viens d'essayer avec un intervalle de 5 minutes : 6 nouvelles images pour le flux 1 et 15 nouvelles pour le flux 2 ...
Hors ligne
#941 Le 19/03/2010, à 16:18
- Alambique
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
Un petit script nautilus, à placer dans "$HOME/.gnome2/nautilus-scripts/":
#!/bin/bash
for fich in $@
do
if [ ${fich#*.} = "txt" ] || [ ${fich#*.} = "dat" ]
then
echo "set term png ; set grid ; plot '$fich' notitle w lp ; set output '${fich%.*}.png' ; rep" | gnuplot
fi
done
Il permet d'exporter un graphique en png à partir d'un (ou plusieurs) fichiers de données; c'est utiles pour les scientifiques.
Mal-pensant, mais résolument linuxien.
Hors ligne
#942 Le 19/03/2010, à 22:42
- twocats
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
Attention si fich comporte plus d'un point tu vas avoir des problèmes. Ex. :
fich=toto.tata.txt donne ${fich#*.} = "tata.txt"
il faut utiliser ${fich##*.} qui donne "txt"
Dernière modification par twocats (Le 20/03/2010, à 13:53)
La réponse est 42
Hors ligne
#943 Le 20/03/2010, à 11:49
- bugs néo
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
Bonjour j'ai trouver ultracopier et minicopier, mais aucun des deux ne font d'interception des copier collé ou couper collé, y a t'il un moyen de remplacé le copier collé classique par un de ces deux logiciel, grace a un script pour thunar (j'utilise thunar)?
jeu de course open source earth-race (le jeu est en réécriture complète depuis janvier, afin de pouvoir aller plus vite par la suite)
Hors ligne
#944 Le 20/03/2010, à 14:08
- Shrat
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
Je ne sais pas pour ton problème mais je signale à toutes fins utiles que le code des programmes que tu cites est dégueulasse. Rien ne vaut le bon vieux cp.
Hors ligne
#945 Le 22/03/2010, à 09:58
- Alambique
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
Attention si fich comporte plus d'un point tu vas avoir des problèmes. Ex. :
fich=toto.tata.txt donne ${fich#*.} = "tata.txt"
il faut utiliser ${fich##*.} qui donne "txt"
Merci à toi, twocats!
Mal-pensant, mais résolument linuxien.
Hors ligne
#946 Le 24/03/2010, à 08:58
- kevin54
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
Bonjour,
j'utilise un script qui compresse et qui envoie à mon NAS des copies de mes serveurs web qui se présente sous la forme www_03-23-10.tar
Ce script marche bien et chaque jour j'ai un nouveau fichier qui est transféré sur mon NAS.
Ensuite je dois faire un autre script sur le NAS cette fois-ci, qui garderait seulement les archives des 2 derniers jours et des 3 derniers dimanches mais je ne vois pas trop comment faire cela.
Je pense faire quelque chose comme ceci :
Verifier date fichier
si date!=dimanche
si date > 3jours Alors Suppression
sinon
si date > 3 semaines Alors Suppression
fi
Cela reste juste une vague idée et je ne vois pas comment concrétiser cela
Merci pour votre aide ^^
Hors ligne
#947 Le 24/03/2010, à 10:54
- yvon22
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
Bonjour,
Pour effacer des fichiers avec un critère de date, tu peux regarder du coté de la commande find.
Exemple : pour supprimer les sauvegardes de plus de 30 jours dans le dossier des sauvegardes des bases de données
find $HOME/save_mysql -mtime +30 -exec rm {} \;
Hors ligne
#948 Le 24/03/2010, à 14:29
- informaticous
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
Alors je voulait faire pour mon script un système d'affichage des état.
exemple :
Téléchargement [ok]
Installation [ok]
Pour ceux que sa interesse voici le code :
#!/bin/bash
#########################
# Live-linux #
#########################
# script qui permet de pouvoir afficher un texte, a droite comme a gauche
Techo () {
Nbr_caracter=`stty -a | grep columns | cut -d ' ' -f7 | tr -d ';'` #conte le nbr de caractere par ligne
Text=`echo "$1" | wc -m` # conte le nombre de caractere de notre mots
Text=$(($Text - 1)) # correction du caractere de tros
Nbr_espace=$(($Nbr_caracter - $Text)) #calcul du nombre d'espace
tmp=`echo $1` # met la variable dans une autre pour avoir plus facille
n=0 #declare la variable
Nbr_espace=$(($Nbr_espace - 5)) # on retire un espace plus les caracter que l'on veut afficher a la fin
while [ "$n" != "$Nbr_espace" ] # On rajoute les espace
do
tmp="$tmp "
n=$(($n + 1))
done
tmp="$tmp [OK]" # on rajoute les cactere de fin
echo "$tmp" # on affiche
}
Techo "hiiiiiiiiiiiiiaaaaaaaaa"
j'y suis, j'y reste
Hors ligne
#949 Le 24/03/2010, à 14:45
- Alambique
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
Ton langage bash est bon, par contre ton francais....
Mal-pensant, mais résolument linuxien.
Hors ligne
#950 Le 24/03/2010, à 14:55
- informaticous
Re : [ VOS SCRIPTS UTILES ] (et eventuelles demandes de scripts...)
@Alambique
Merci je vais faire plus attention a mon français.
j'y suis, j'y reste
Hors ligne