Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1290 connectés 

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Script bash

n°815825
Thomas_59
Posté le 03-06-2006 à 01:58:42  profilanswer
 

kikou tout le monde
 
petite question
 
comment puis je enchainé 2 actions ... car la il me lance la premiere action mais enchaine pas sur la 2 eme ....
 
#!/bin/bash
./test.exe &&
./taskkill /im test.exe
echo -n "mise à jour terminé..."
fi
 
merci d avance ...

mood
Publicité
Posté le 03-06-2006 à 01:58:42  profilanswer
 

n°815826
Thomas_59
Posté le 03-06-2006 à 02:15:37  profilanswer
 

J ai trouvé .....
 
./test.exe & ./sleep 2; ./taskkill /im test.exe
 
pour info....
 
 
sinon j ai une autre question .....
 
je voudrais creer un historique ...
 
j ai deja  
 
./cmp test.txt test.txt.old
 
je voudrais que si le fichier est different il prenne la premiere ligne du fichier test.txt et qu il rajoute la ligne au fichier historique.txt ....  
 
possible a faire .?
 

n°815846
kruso
Posté le 03-06-2006 à 12:03:57  profilanswer
 

avec cat test.txt | grep -m1 expr >> historique.txt
 
Si expr est une expression régulière qui figure dans la première ligne de test.txt, il va copier la ligne à la fin de historique.txt... c'est pas tout à fait ce que tu veux, mais je n'en connais pas beaucoup en bash, désolé :)

n°815852
Mjules
Modérateur
Parle dans le vide
Posté le 03-06-2006 à 12:36:23  profilanswer
 

kruso a écrit :

avec cat test.txt | grep -m1 expr >> historique.txt
 
Si expr est une expression régulière qui figure dans la première ligne de test.txt, il va copier la ligne à la fin de historique.txt... c'est pas tout à fait ce que tu veux, mais je n'en connais pas beaucoup en bash, désolé :)


 
pas besoin de cat ici ;) :

grep -m1 expr test.txt >> historique.txt


 
 
sinon, pour la réponse à la question, un diff (pour comparer les modifications, si tu veux juste regarder les dates de modifs ou autres, tu peux utiliser test) suivi d'un head -n1 test.txt >> historique.txt si nécessaire


Message édité par Mjules le 03-06-2006 à 12:38:23

---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
n°815863
Thomas_59
Posté le 03-06-2006 à 14:08:44  profilanswer
 

Merci pour vos reponses ...
 
mais quand j utilise  
 
grep -m1 expr test.txt >> historique.txt
 
j ai aucune erreur dans le script ... mais il me creer un fichier de 0 octet pour le fichier historique.txt .....

n°815864
Mjules
Modérateur
Parle dans le vide
Posté le 03-06-2006 à 14:10:17  profilanswer
 

expr est bien sur la première ligne de test.txt ?
 
si il n'y est pas, c'est normal que grep ne trouve rien


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
n°815870
Thomas_59
Posté le 03-06-2006 à 15:04:30  profilanswer
 

ok c est bon j avais pas compri l utilisation de expr ...
 
c est on ca fonctionne nikel ..... derniere chose .... puis je mettre une date et heure a la ligne k il rajoute

n°815966
Thomas_59
Posté le 03-06-2006 à 23:40:26  profilanswer
 

personne qui sait rajouter une date en script bash .?

n°815977
Thomas_59
Posté le 04-06-2006 à 00:30:37  profilanswer
 

y a t il une commande genre ./grep "date" test test.txt historique.txt ...
 
je trouve pas comment rajouter la date dans le fichier historique en meme temps ...

n°816009
Mjules
Modérateur
Parle dans le vide
Posté le 04-06-2006 à 11:45:26  profilanswer
 

man date; tout est expliqué dedans.
 
et si tu veux seulement la première ligne, il y a mieux que grep (head par ex)


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
mood
Publicité
Posté le 04-06-2006 à 11:45:26  profilanswer
 

n°816043
Thomas_59
Posté le 04-06-2006 à 13:34:37  profilanswer
 

Merci pour ton aide .... mais kan j utilise ./date >> historique.txt ca me rajoute une ligne avec la date ....
 
moo je voudrais ne pas rajouter de ligne mais plutot rajouter la date a la fin de la derniere ligne de historique.txt
 
je recherche sur le forum mais apparement une telle commande se fait pas avec ./date ou ./grep
 
Merci d avance ... si vous avez une solution ;)

n°816046
Mjules
Modérateur
Parle dans le vide
Posté le 04-06-2006 à 13:53:13  profilanswer
 

franchement, documente toi sur le shell, les expressions régullère, les outils et la façon de les employer, là tu teste au petit bonheur la chance et tu n'obtiendras que très difficilement des résultats.
 
tu as plusieurs sites qui parlent de ce sujet dans le topic des liens.
 
en substance, j'essaierais un truc comme ça (on suppose que tu crées un fichier test.old en début de ton programme par copie de test.txt) :
 

Code :
  1. TETE=`head -n1 test.txt`
  2. MAINTENANT=`date +"%F %r"`
  3. diff test.txt test.old > /dev/null
  4. if [ $? -gt 0 ];
  5.   then
  6.      echo  $TETE $MAINTENANT >> historique.txt
  7.   else
  8.      exit 0
  9. fi


 
(ce code doit marcher mais il est à adapter en fonction de tes vrais besoins)


Message édité par Mjules le 04-06-2006 à 13:53:58

---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
n°816049
Thomas_59
Posté le 04-06-2006 à 14:28:16  profilanswer
 

j ai bien fais ce que tu as dis ...
voila mon fichier test.sh
 
#!/bin/bash
TETE="head -n7 clefdujour.txt"
MAINTENANT="date"
echo  $TETE $MAINTENANT >> historique.txt
 
mais dans le fichier historique j obitient la ligne
 
head -n7 test.txt date
 
je repete que je n utilise pas linux ... je suis sous windows et que je lance un fichier .sh  
 
avec la comande bash test.sh
 
deja si je met ton script exact il me dis que la commande tete et maintenant sons introuvable .... mais si je met " au lieu de ` ca fonctionne mais il me met pas la date ....

n°816051
Mjules
Modérateur
Parle dans le vide
Posté le 04-06-2006 à 14:38:01  profilanswer
 

Thomas_59 a écrit :

j ai bien fais ce que tu as dis ...
voila mon fichier test.sh
 
#!/bin/bash
TETE="head -n7 clefdujour.txt"
MAINTENANT="date"
echo  $TETE $MAINTENANT >> historique.txt
 
mais dans le fichier historique j obitient la ligne
 
head -n7 test.txt date
 
je repete que je n utilise pas linux ... je suis sous windows et que je lance un fichier .sh  
 
tu ne l'as jamais précisé dans tes messages initiaux... forcément, sous windows, ça marche différemment (d'ailleurs, tu utilises cygwin ?) pourquoi tu n'utilises pas carrément l'interpréteur DOS/windows ?
 
avec la comande bash test.sh
 
deja si je met ton script exact il me dis que la commande tete et maintenant sons introuvable .... mais si je met " au lieu de ` ca fonctionne mais il me met pas la date ....


 
documente toi et n'essaye pas de faire tout à l'aveuglette.


Message édité par Mjules le 04-06-2006 à 14:38:54

---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
n°816061
Thomas_59
Posté le 04-06-2006 à 14:52:33  profilanswer
 

j ai fais un script automatique qui marche tres bien ....
 
mais avec la comande bash ....
 
a la limite si rajouter une dat ou heure c est pas possible tant pis .....
 
mais ca m aiderais , car la j ai des ligne sans date ... assez chiant pour retracer les evenements .... ;)
 
mais bon si c est pas possible  je me contenterais de mon tit script ....
 
Merci bcp pour ton aide


Aller à :
Ajouter une réponse
 

Sujets relatifs
script bash pour determiner l'etat d'un serveur[resolu]script bash, problème de jointure
Interface graphique pour un script bashrecoder un script bash en ash
recuperer une variable dans une bdd SQL pour un script bashcomment faire un script bash d'une calculatrice IP ?
[RESOLU] script bash avec hylafaxScript bash, petite question
[débutant] problème script bash[bash] Retirer des droits d'un user chrooté root de sa prison ?
Plus de sujets relatifs à : Script bash


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR