Forum Bash

AuteurSujet: Convertir mon batch en bash
Laddy

5 messages
Posté le 20/01/2009 à 05:48:10
Bonjour



je ne connais pas du tout le bash et j aimerai convertir l'un de mes batchs dans ce language pour un de mes collègues qui est sous linux.



J'ai réalisé pour notre forum, un batch qui permet de tagguer ses images par glisser déposer. Il sert pour les images des tutoriels.



J'ai découvert votre initiation bash,je vais m'y mettre mais j aimerai un coup de main pour celui afin de mieux comprendre.

Je suis en période d'examen (admin réseau) et peu de temps à me consacrer à ce nouvel apprentissage.



Est il possible de faire glisser déposer une image sur un bash comme sous windows si oui comment, récupérer le chemin ?
quel est l'équivalent de "%~dp0"


TagIMG utilise nconvert qui est disponible pour linux aussi.





TagImg


TagImg permet par glisser déposer de tagguer par un logo toutes les images.



Contenu : logo.bat, tagimg.bat, nconvert.exe , dossier tagg



Logo.bat



@echo off

::remerciements Lunnatick pour la solution code

::glisser déposer l\'image pour créer le ficher de tag

echo %~1> \"%~dp0logo.lconf\"




TagImg.bat

@echo off

::Remerciements

::Lunnatick http://www.lunnatick.fr

:: Gougelet Pierre-Emmanuel pour Nconvert http://pierre.g.pagesperso-orange.fr/xnview



::variable pour le répertoire de travail

set tag=%~dp0

::si le fichier de configuration existe pour chaque fichier glisser deposer utilise le fichier sinon utilise cette image

if exist \"%~dp0logo.lconf\" ( for /f \"delims=\" %%i in (\'type \"%~dp0logo.lconf\"\') do set vrLogo=%%i

) else ( set vrLogo=%tag%\\def.png )





:encore

if \"%~dpnx1\"==\"\" goto fin

::commande pour tagguer l\'image avec le logo

\"%tag%nconvert.exe\" -o \"%tag%tagg\\%~n1%~x1\" -wmfile \"%vrLogo%\" -wmflag center \"%~dpnx1\"



shift

goto encore

:fin

@exit




En espérant avoir votre aide car je suis perdue.



Amicalement,

Laddy

http://www.batchclipboard.info

en bash ceci est il bon ?
logo.sh

Voici ce que j'ai fait mais ce n'est que théorique je nai pas d environnement linux pour tester.

#!/bin/bash
# logo.sh
#stocker le chemin du logo dans un fichier
echo $1 > "logo.lconf"


vraiement désolé mais le script affiche les lorsque je modifie


#!/bin/bash
#Remerciements
#Lunnatick http://www.lunnatick.fr
#Gougelet Pierre-Emmanuel pour Nconvert http://pierre.g.pagesperso-orange.fr/xnview
#variable pour le répertoire de travail
vide=1
#si le fichier de configuration existe pour chaque fichier glisser deposer utilise le fichier sinon utilise cette image
if [ -e logo.lconf ] then
for i in logo.lconf do vrLogo=i
else vrLogo=def.png
#si variable vide alors sortir sinon tagguer les images
if [ $# -lt "$vide" ]
then
exit 0
else
#commande pour tagguer l'image avec le logo dans le répertoire tagg
nconvert -o "tagg%~n1%~x1" -wmfile $vrLogo -wmflag center "%~dpnx1"
fi
shift
exit 0

je ne suis pas sur de savoir comment faire pour la ligne de commande nconvert et reccuperer le chemin du fichier qui est glisser deposer
collinm

60 messages
Posté le 20/01/2009 à 09:25:39
il faut lancer logo et et ensuite le deuxième script?
Laddy

5 messages
Posté le 23/01/2009 à 17:31:14
en fait tu glisses déposes le logo sur le premier batch (logo.bat)
il reccupere le chemin

et ensuite tu glisses les images à tagguer sur le second batch (TagImg.bat)

et le second batch taggue les images avec le logo


Malheureusement je ne sais pas si c'est la bonne méthode en bash si je dois faire la même car sous windows j ai dû séparer en deux batchs pour que cela fonctionne.

/>

Et surtout beaucoup d'interrogation :


quel est l'équivalent de %~dpx0 %~n1%~x1"


voici une video swf : http://www.batchclipboard.info/divers/tagimgtux.swf


Mon pc est trop long avec un CDlive je n ai pu tester ce que j\'ai ecris.



En espérant que vous puissiez m'aider.
collinm

60 messages
Posté le 23/01/2009 à 17:54:47
Après quelques tests et demande
il semblerait que ça soit impossible

j'ai testé sous kde (un environnement graphique sous linux), et lorsqu'on fait un drag and drop... certaine action son associé et avec un bash... je ne pouvais pas que le glisser...

si ça serait possible il n'y aurait pas de problème

une solution serait de lancer un script avec une liste de paramètre pour tagger...

genre en console linux tu lances ton scrip

./monscript param1 param2

les paramètres pourrait être le nom de l'image ou bien le repertoire à tagger
Laddy

5 messages
Posté le 26/01/2009 à 08:09:44
si c'est possible avec un lanceur.
Mon script est fait y a des détails à régler comme les chemins
collinm

60 messages
Posté le 26/01/2009 à 10:21:57
sous quel environnement?

sous kde, impossible de prendre un logo et de le déposer sur un script bash

Page valide XHTML 1 Strict