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.

#1126 Le 13/08/2010, à 11:29

AnsuzPeorth

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

benoitfra a écrit :

la commande  $(basename "$1")` fonctionne je lance le script avec touche menu+n

??? Ah bon ! Tu peux détailler ? Tu as installer koi (nautilus-action peut être ? )

benoitfra a écrit :

le seul problème est qu'il semble impossible de lancer le script donné plus haut automatiquement quand on sélectionne un fichier.
tant pis

Admettons que le raccourci clavier, Menu+n te lance bien un script avec comme argument le fichier selectionné.
Il serait assez simple de lancer un daemon qui surveille si tu es bien dans nautilus, et qui simule l'appuis sur ce raccourci clavier (via xdotool) toutes les x secondes, une comparaison et lancement de la lecture ou non.(en python ca serait peut être mieux d'ailleurs, pas besoin de boucle infini, il serait possible d'agir uniquement si nautilus est au premier plan)
Il faudrait savoir si la commande espeak garde la main ou non ?
Tu devrais ouvrir un fil de discussion pour ce sujet, sinon il risque de se perdre dans ce fil ci.

carambar a écrit :

Mais je me demandais si une solution, permettant à partir de nautilus en sélectionnant un fichier d'obtenir par un clic droit une option d'envoi via bluetooth, serait difficile à réaliser.

Il faudrait connaitre la commande à lancer pour le bluetooth (voir option du lanceur)


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#1127 Le 13/08/2010, à 12:50

carambar

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

Hum, donc apparemment pas si évident que cela!
Mais l'idée vous parait-elle intéressante pour rendre ubuntu plus user friendly?


sudo apt-get remove --purge les cons

Intel® Core™2 Quad CPU Q6600 @ 2.40GHz × 4 ,12.04 (precise) 64 bits.

Hors ligne

#1128 Le 13/08/2010, à 15:13

Compte supprimé

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

Effectivment, ça marche avec nautilus action
Supposons que le script se nome nam.sh

Dans nautilus-action,j'ai crée une nouvelle action nommée name.
Onglet action:
j'ai coché toutes les cases sauf read-only, puis dans le champ context label j'ai mis _name (le _ pemet d'appeler l'action name dans le menu)
Onglet commande:
Path: fichier cible
parameters: %m
Onglet Condition
Appears if selection contain : coché Both (peut etre multiple table or folder march)

enfin ctrl+s et redémarrage

Il ne reste plus qu'à sélectionner un fichier au clavier et d'appuyer sur la touche menu+n.
(est ce vraiment un raccourci? en tout cas c'est assez rapide)

#1129 Le 13/08/2010, à 16:51

AnsuzPeorth

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

@benoitfra
donc il serait possible de faire un truc 'automatique'

L'idée:
Lancer un daemon qui surveille quelle fenêtre est au premier plan
si nautilus au premier plan, lancer un autre daemon qui lui, lance le raccourci clavier régulierement pour récupérer la selection (transimission vers le père via un FIFO). si c'est pas le même fichier, on lance espeak.
Ca devrait fonctionner, sans trop consommer de ressources !

Il faudrait déjà mettre ça en place en bash, voir la conso, sinon en python ca serait peut être mieux.

Ouvre un nouveau fil de discussion, pour pas trop polluer celui-là ( on s'y retrouve déjà plus !)

Dernière modification par AnsuzPeorth (Le 13/08/2010, à 16:51)


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#1130 Le 13/08/2010, à 16:58

AnsuzPeorth

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

carambar a écrit :

Hum, donc apparemment pas si évident que cela!
Mais l'idée vous parait-elle intéressante pour rendre ubuntu plus user friendly?

dans la doc, il est expliqué comment utilser en ligne de commande, il est ensuite assez simple de créer un script nautilus.


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#1131 Le 13/08/2010, à 17:14

Compte supprimé

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

Merci AnsuzPeorth pour toutes les indications.
Je dois avoué que l'on touche à des trucs  auxquels je ne connais rien (langage python ect)
pour le nouveau fil, j'en ai ouvert un qui traite de la déficience visuelle et d'ubuntu dans la catégorie accessibilité. je poste le lien ici:

http://forum.ubuntu-fr.org/viewtopic.php?id=411206&p=2

Le fil traite de toutes les astuces qui pourraient améliorer la vie des malvoyants sur ubuntu (même si on est peu nombreux).
j'y ai déjà posté des scripts et j'ai commencé à parler d'un tel script sur ce fil (j'étais sur le point d'abandonner car il n'y avais à priori aucune solution).

Dernière modification par benoitfra (Le 13/08/2010, à 17:27)

#1132 Le 13/08/2010, à 19:01

yamo

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

Salut,

lesauc a écrit :

Bonjour,

2 petites demandes de script :

1° Virer tous les accents des noms de fichiers contenus dans ensemble de sous-répertoires

pyrenamer fait ça.

lesauc a écrit :

2° Un script permettent de generer une page html qui liste les fichiers contenus dans un ensemble de sous-répertoires, en incluant les liens vers ces fichiers .

Bon ben voilà !

Merci de vos réponses !

en php ( ça prend les fichiers et répertoires) étrangement je dois trier car je ne sais pas quel ordre ça sort :

<?
$folder = "./";
list($domaine, $repertoire, $pagephp )= split ("/", $_SERVER["REQUEST_URI"]);
$chemin=$_SERVER['DOCUMENT_ROOT'].'/'.$repertoire.'/';
$dossier = opendir($folder);
  while ($liste_fichiers = readdir($dossier)) {
     $tableau[] = $liste_fichiers; 
}
natcasesort($tableau);
foreach ($tableau as $Fichier){
  if ($Fichier != "." &&  $Fichier != ".."    && $Fichier != "index.php") {
	$nomFichier = $folder."/".$Fichier;
	echo "<div><a href='";
	echo     str_replace("//", "/", $nomFichier);
	echo "'    class='menu'>";
        echo    $Fichier;
	echo "</a></div>";
  }
}//foreach
closedir($dossier);
?>

Stéphane
--
Debian 9 XFCE  Xubuntu 16.04.2  - #ubuntu sur freenode

sudo / matrix

Hors ligne

#1133 Le 13/08/2010, à 19:37

carambar

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

AnsuzPeorth, je n'avais même pas lu la doc mea culpa, donc cette option existait dans les distro précédentes.
Merci pour ton aide, mais ça reste trop balèze pour moi je vais attendre que l'option soit à nouveau présente à la suite d'une mise à jour.


sudo apt-get remove --purge les cons

Intel® Core™2 Quad CPU Q6600 @ 2.40GHz × 4 ,12.04 (precise) 64 bits.

Hors ligne

#1134 Le 17/08/2010, à 21:47

Compte supprimé

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

Salut à tous
J'aurai besoin d'un petit peu d'aide concernant un script svp...
Voilà, j'ai ce script :

#!/bin/bash

VOIX=/opt/mbrola/fr4/fr4 
TYPE=mb/mb-fr4
choix="1"
echo "$choix"
sleep 4
while [ "$choix" = "1"] do 

xdotool key "Menu+n" 
xdotool key "Down"

espeak -v $TYPE -s 130 -p 30 "poursuivre" | mbrola $VOIX - -.au | aplay  & 
Choix=`zenity --list --title="Poursuite de la navigation" --column="N°" --column="poursuivre" --height="100" \
1 oui \
2 non  `

case $Choix in
1 ) choix=$Choix ;;
2 ) ;;
esac

done

exit

Le script vient à la suite de la discussion que j'ai déjà eu sur ce post...donc je ne réexplique pas le but du script (Si il y'a besoin, je le ferai avec plaisir).
Le problème est que je n'arrive pas à mettre ne place la boucle while
un petit peu d'aide svp

#1135 Le 17/08/2010, à 21:58

draco31.fr

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

Déjà pour le test du while, il faut doubler le signe égal : while [ "$choix" == "1"] do ..
Ensuite à aucun moment tu ne réinitialise la variable $choix.
Donc ta boucle ne va jamais se terminer.
Dans le cas 2, tu devrais changer le contenu de "choix", ou faire un "exit" s'il n'y a rien d'autre à exécuter, ou faire un "break" si tu veux juste sortir de la boucle while (dans les 2 derniers cas, un while true suffit).

Hors ligne

#1136 Le 18/08/2010, à 10:28

Compte supprimé

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

Merci Draco31
J'ai mis un break pour le cas 2, mais je ne sais pas comment réinitialiser la variable $choix

#1137 Le 18/08/2010, à 12:38

draco31.fr

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

avec le break, tu n'as plus besoin de toucher à la variable choix.
Sinon, il suffit d'indiquer un texte libre : choix="", ou de supprimer la variable : unset choix
Attention, car dans les deux cas, il faut penser à écrire "$choix" avec les guillemets dans tout les tests, sinon on obtient un résultat inattendu.

Je te propose le code suivant, plus simple, pour ton script :

#!/bin/bash

VOIX=/opt/mbrola/fr4/fr4 
TYPE=mb/mb-fr4

while true do 
{
    xdotool key "Menu+n" 
    xdotool key "Down"

    espeak -v $TYPE -s 130 -p 30 "poursuivre" | mbrola $VOIX - -.au | aplay  & 

    declare -i choix=`zenity --list --title="Poursuite de la navigation" --column="N°" --column="poursuivre" --height="100" \
1 oui \
2 non  `

    case $choix in
        1 ) continue ;;
        2 ) break ;;
    esac
}
done

exit

PS : Que se passe-t-il s'il y a déjà une lecture en cours au moment où l'utilisateur valide le choix suivant ?
Ne faudrait-il pas tuer aplay d'abord, ou faire un sleep, ou un wait pour attendre la fin de la lecture ?

EDIT : Je crois que y a plus simple pour zenity, avec une fenêtre oui/non où on teste le code retour ($?).

zenity --question --title="Poursuite de la navigation"

Dernière modification par draco31.fr (Le 18/08/2010, à 12:47)

Hors ligne

#1138 Le 18/08/2010, à 13:32

Compte supprimé

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

Merci draco31
J'ai rajouté ceci dans le cas où une lecture serai déjà en cours

if [ ! -z $(ps -A | grep mbrola | awk '{ print $1 }' ) ]; then
     kill $(ps -A | grep mbrola | awk '{ print $1 }' ) && sleep 2
fi

Cependant après avoir testé le script cela ne fonctionne pas...je ne sais pas pourquoi.
J'ai placé un dans la boucle while ceci: 

echo "ok" sleep 2

Mais aucun résultat.

Concernant la fenêtre zenity  --question,

zenity --question --title "poursuivre la navigation"
choix="$?"
echo "$choix"

Cela me retourne 0 si je réponds oui et 1 si je réponds non...effectivement draco31, cela est plus simple.

Dernière modification par benoitfra (Le 18/08/2010, à 14:02)

#1139 Le 18/08/2010, à 13:40

wido

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

rectifie ton code tu mets: ' et " tu mets sois l'un ou l'autre pas les deux smile

Hors ligne

#1140 Le 18/08/2010, à 14:03

Compte supprimé

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

Merci wido pour ta participation...
Je suis novice et j'aurai besoin que tu précise stp

#1141 Le 18/08/2010, à 20:51

Compte supprimé

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

Bon, je n'arrivais pas à faire marcher la boucle while, je l'ai remplacé et ça marche maintenant, si cela intéresse quelqu'un, je poste le script ici. Il peut sans doute être amélioré.

#!/bin/bash

###### Définition de la voix à utiliser ######
VOIX=/opt/mbrola/fr4/fr4 
TYPE=mb/mb-fr4

###### initialisation variable de mouvement ######
MOVE="1"


###### test pour savoir si la lecture est en cours et la couper si oui ######
if [ ! -z $(ps -A | grep mbrola | awk '{ print $1 }' ) ]; then
     kill $(ps -A | grep mbrola | awk '{ print $1 }' ) && sleep 1
fi

###### boucle de mouvement ######
for ((nr=1 ; nr<=$MOVE; nr++))  
do 
 
espeak -v $TYPE -s 130 -p 30 "navigation" | mbrola $VOIX - -.au | aplay  & 
 
choix=`zenity --list --title="Naviguer" --column="N°" --column="choix" --height="200" \
1 haut \
2 bas \
3 gauche \
4 droite \
5 lire \
6 stop `

case $choix in
    1 ) xdotool key "Up" | xdotool key "Menu+n" && MOVE=$(($MOVE+1)) ;;
    2 ) xdotool key "Down" | xdotool key "Menu+n" && MOVE=$(($MOVE+1)) ;; 
    3 ) xdotool key "Left" | xdotool key "Menu+n" && MOVE=$(($MOVE+1)) ;;
    4 ) xdotool key "Right" | xdotool key "Menu+n" && MOVE=$(($MOVE+1)) ;;
    5 ) xdotool key "Menu+n" && MOVE=$(($MOVE+1)) ;;
    6 ) xdotool key "Menu+o" && exit ;;
esac;

done

exit

#1142 Le 18/08/2010, à 22:14

Shrat

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

J'ai mis sur mon site un script permettant de regarder la télévision avec la freebox.

Hors ligne

#1143 Le 22/08/2010, à 14:49

Aurelien69

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

Bonjour,

Je poste un script pour télécharger toutes les minis BDs du site "Cyanide & Happiness" à l'adresse http://www.explosm.net/comics/new/
J'ai en fait amélioré un script proposé suite à une demande d'une personne sur un forum : http://forums.whirlpool.net.au/forum-re … m?t=836271

Au premier lancement du script il télécharge toutes les images dans le dossier contenant le script.
Au début ça peut prendre du temps parce qu'il y a déjà + de 1800 images à l'heure actuelle.
Mais après, lors des prochains lancement du script dans le dossier contenant les images déjà téléchargé, le script télécharge seulement les nouvelles images disponibles.

Ce script permet donc d'avoir toutes les BDs de "Cyanide & Happiness" et de tenir la collection à jour.

#!/bin/sh
# Cyanide & Happiness
# Download images of the site : www.explosm.net

OLDIFS=$IFS
IFS='
'

# Begin :
echo
echo "Cyanide & Happiness"
echo

if [ -f "index.html" ]; then
	rm -f index.html
fi

# Last picture to download :
wget -q "http://www.explosm.net/comics/new/"
END="`grep -o 'URL="http://www.explosm.net/comics/[^"]*"' index.html | sed 's/\/"//'`"
END="`basename $END`"

# Last picture downloaded :
BEGIN="`ls . | sort -n -r | head -n 1`"
BEGIN="${BEGIN%%-*}"
if [ -s "$BEGIN" ];then
	BEGIN="14"
fi

if [ "$BEGIN" -ge "$END" ]; then
{
	rm index.html
	echo "\"Cyanide & Happiness\" COMPLETE !"
	sleep 1
	exit 0
}
fi

BEGIN=`expr $BEGIN + 1`
echo " Download n° $BEGIN to n° $END :"
echo

# Downloading :
for PICTURE in `seq $BEGIN $END`
do
	rm -f index.html

	wget -q "http://www.explosm.net/comics/$PICTURE/"
	IMAGE=$(grep -o 'http://www.explosm.net/db/files/[^"]*"' index.html | grep -o '[^"]*')

	if [ -n "$IMAGE" ];then
	{
		FILENAME=$(basename $IMAGE)
		FILENAME="`echo \"$FILENAME\" | sed 's/\.gif$/\.jpg/'`"
		OUTPUT=$(echo "$PICTURE-$FILENAME")

		echo " -> $PICTURE-$FILENAME"
		wget -q -O "$OUTPUT" $IMAGE
	}		

	else
		echo " -> No Picture n°$PICTURE !"
	fi
done

# End :
rm index.html
IFS=$OLDIFS
echo
echo "DOWNLOAD COMPLETED !"
sleep 1
exit 0

Le code est bien sur à placer dans un fichier que l'on rend exécutable.
Faut avoir internet pour utiliser le script bien évidemment.

J'espère qu'il fonctionnera bien chez tout le monde.
smile

Edit : Prise en compte des fichiers dont le nom contient des espaces (comme l'image 85 et 359 du site).

Dernière modification par Aurelien69 (Le 27/08/2010, à 00:02)


Le jour où Microsoft inventera quelque chose qui ne plante pas, ce sera un clou.

Hors ligne

#1144 Le 29/08/2010, à 23:57

bundy

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

bonjour je cherche un script pour chopper toute mes pochettes d'un coup avec quodlibet

j'en est trouver un pour rhythmbox et ça à trés bien marcher mais je ne sai pas oùil les à stoquer et si elles sont réutilisables avec quolibet

avec quolibet le plug in permet de les recuperer une par une: j'ai fait ctrl clic et j'ai selectioné toutes mes pochettes d'un coup: je vous explique pas le bordel!!! lol

bien sur il a planter ;meme en désinstallant et en réinstalant , quolibet se rouvrait tj au meme point..... j'ai réinstallé ubuntu ( bon je l'avait installé que depuis quelques jours mais c'était quand meme relou)

Hors ligne

#1145 Le 01/09/2010, à 16:53

cayetanensis

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

Bonjour à tous,

Je suis débutant scriptographe, et depuis quelques temps je savais qu'il fallait que je me plonge dans sed. La rentrée radiophonique m'a permis le déclic puisqu'une émission de france-info que je podcastais n'est plus disponible en podcast mais uniquement sur le site sous la forme d'un lien qui ajoute l'émission dans un player flash merdique où on est sensé la lire si jamais il nous reste un peu de RAM pour déplacer la souris jusque sur le bouton play.

J'ai donc pondu avec mes petites mimines un petit script efficace qui me permet de télécharger la quotidienne de « Toute info, tout éco » d'Emmanuel Kessler puisque c'est l'émisssion en question.

Bien sûr ça peut fonctionner avec n'importe qu'elle autre émission de France Info.

Donc voilà mon œuvre, non pas pour que vous m'applaudissiez, mais plutôt pour que vous me fassiez des critiques si vous lui trouvez des défauts ou des imperfections, que vous l'améliorez si vous en avez envie, ou que vous l'utilisiez si vous en trouvez l'utilité !

#!/bin/sh
# chronique-info.sh

# récupère en local une chronique de france info non disponible au podcast
# et lisible en ligne via un player flash merdique


# chaîne permettant d'identifier la chronique (son titre ou le nom de son chroniqueur
# telle qu'il apparaît sur la page http://www.france-info.com/-chroniques-.html)

CHRONIQUE='Emmanuel Kessler'


# sed se focalise sur le paragraphe de la chronique qui nous intéressent
# puis insère des sauts de lignes à la places des apostrophes
# il ne reste plus qu'à faire un petit grep sur le ligne contenant la deuxième partie de l'adresse

SUFIXE=`wget -O - -q http://www.france-info.com/-chroniques-.html | sed -n "/$CHRONIQUE/,/mp3/ s/'/\n/pg" | grep mp3`

# et enfin un petit wget sur l'adresse compète

wget -nc http://www.france-info.com/"$SUFIXE"

Dernière modification par cayetanensis (Le 01/09/2010, à 16:54)


cayetanensis

Hors ligne

#1146 Le 08/09/2010, à 15:38

Aureus

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

Bonjour smile

Je cherche un script qui pourrait exécuter la tache suivante :

Capture d'écran (sur une fenêtre)
Convertir la capture en jpg
l'envoyer par email.

A programmer par un cron job toutes les 30 minutes durant la journée.

si vous connaissez un bon moyen de prendre des screenshots en ligne de commande par exemple je suis preneur.

Hors ligne

#1147 Le 08/09/2010, à 15:50

beware

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

Hors ligne

#1148 Le 08/09/2010, à 16:00

Gardouille

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

Pour l'impression d'écran:
Scrot, voir ici smile

Hors ligne

#1149 Le 09/09/2010, à 08:00

Aureus

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

merci beaucoup !

Hors ligne

#1150 Le 09/09/2010, à 09:53

yamo

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

Salut,

Je déplace directement les images de mon appareil photo sur mon eeepc dans mon répertoire Images gràce à son lecteur de carte SD, le seul défaut c'est que je me retrouve avec des photos qui ont le droit d’exécution (sous windows le droit d'exécution n'existe pas donc sous Linux on considère que ces fichiers ont le droit d’exécution). Je ne crois pas que ce soit un défaut grave mais ça m'a donné l'occasion de faire un petit script.

#!/bin/bash
#Donner des droits normaux aux fichiers que j'extraie de la carte mémoire de mon Panasonic LX3
find ~/Images -type f -iname "*.jpg" -exec chmod 640 {} \+
find ~/Images -type f -iname "*.RW2" -exec chmod 640 {} \+
find ~/Images -type f -iname "*.MOV" -exec chmod 640 {} \+

Le code est aussi là : http://pasdenom.info/scripts/Images.sh

Edit : Je viens de me rendre que ce problème concerne aussi les vidéos (format MOV).

Dernière modification par yamo (Le 09/09/2010, à 09:56)


Stéphane
--
Debian 9 XFCE  Xubuntu 16.04.2  - #ubuntu sur freenode

sudo / matrix

Hors ligne