Bonjour,
j'ai une 100ene de fichiers .h et une autre de .cpp à modifier de la facon suivante :
Pour les .h tout ce qui est de cette forme
/**
* Licence
*/
#ifndef TOTO_H
#define TOTO_H
#include "TATA.h"
/**
* @author ...
*/
class TOTO
{ public:
...
}
Par
/**
* Licence
*/
#ifndef TOTO_H
#define TOTO_H
#include "TATA.h"
/**
* @author ...
*/
namespace TITI
{
class TOTO
{ public:
...
}
}
Donc ajouter namespace TITI (…)
Forum Programmation.shell passer de QT3 a QT4 sous mandriva
Bonjour. a tous.
je voudrais changer mon PATH pour pouvoir me servir de QT4 (qui par ailleurs est parfaitement installe)
mon PATH:
"usr/bin:bin:usr/local/bin.....usr/lib/qt3//bin ..."
et le remplacer par:
"usr/bin:bin:usr/local/bin.....usr/local/Trolltech/QT4 ..."
comment faire pour trouver tous les fichiers dans lesquelsil est ecrit par exemple
"export $PATH"
je sais qu'il faut utiliser find et grep mais un peu d"'aide serais la bienvenue.
Merci d'avance
je voudrais changer mon PATH pour pouvoir me servir de QT4 (qui par ailleurs est parfaitement installe)
mon PATH:
"usr/bin:bin:usr/local/bin.....usr/lib/qt3//bin ..."
et le remplacer par:
"usr/bin:bin:usr/local/bin.....usr/local/Trolltech/QT4 ..."
comment faire pour trouver tous les fichiers dans lesquelsil est ecrit par exemple
"export $PATH"
je sais qu'il faut utiliser find et grep mais un peu d"'aide serais la bienvenue.
Merci d'avance
Forum Programmation.shell document recapilutatif SED
bonjour,
connaissez vous un site internet ou une doc à télécharger récapitulant une somme d'exemple pour toutes les fonctions de sed (ou la plus grande partie ).
ça meviterai de perdre beaucoup de temp , le man ne donne pas d'exemple et info sed n'en donne que peut, pour trouver une info précise sur le net faut toujours chercher longtemps
par exemple au passage , comment inserer une ligne dans un fichier juste avant la première occurence d'un mot ?
(…)
connaissez vous un site internet ou une doc à télécharger récapitulant une somme d'exemple pour toutes les fonctions de sed (ou la plus grande partie ).
ça meviterai de perdre beaucoup de temp , le man ne donne pas d'exemple et info sed n'en donne que peut, pour trouver une info précise sur le net faut toujours chercher longtemps
par exemple au passage , comment inserer une ligne dans un fichier juste avant la première occurence d'un mot ?
(…)
Forum Programmation.shell truc bizarre avec un script
conjour ,
j'ai un petit souci :
lorsque le lance un sed dans le shell ça fonctionne
par contre lorque je fait dans le shell " sed -i -r -e '/^[ ]*#\|^$\|^\n*$/! s/if_(..).*[a-zA-Z][0-9]*\.([a-z]).*[a-z]$/IF \U\1\E.\2/' mon_fichier " ben ça marche pas
c'est une commande qu devrait me transformer la chaine "if_lt r65.x, d55" en un chaine "IF LT.x"
exemple qui marche
j'ai un petit souci :
lorsque le lance un sed dans le shell ça fonctionne
par contre lorque je fait dans le shell " sed -i -r -e '/^[ ]*#\|^$\|^\n*$/! s/if_(..).*[a-zA-Z][0-9]*\.([a-z]).*[a-z]$/IF \U\1\E.\2/' mon_fichier " ben ça marche pas
c'est une commande qu devrait me transformer la chaine "if_lt r65.x, d55" en un chaine "IF LT.x"
exemple qui marche
$ A='if_lt r4.x, c0.b\nif_gt r5.w, c0.b'
$ echo -e $A | sed -r -e '/^[ ]*#\|^$\|^\n*$/! s/if_(..).*[a-zA-Z][0-9]*\.([a-z]).*[a-z]$/IF \U\1\E.\2/'
IF LT.x
(…)
Forum Programmation.shell chown récursif avec exclusion de répertoire
Salut à tous !
J'aimerais faire un chown -R sur un répertoire en excluant un sous répertoire.
Ex:
[root@WW-NOITST08 miles]# ls -l ./MilesRoot
total 1376
drwxrwxrwx 3 nlaccept nlaccept 12288 sep 19 14:47 batch
drwxrwxrwx 3 nlaccept nlaccept 4096 sep 19 11:39 command
drwxrwxrwx 8 nlaccept nlaccept 4096 sep 4 12:16 milesweb
drwxrwxrwx 3 nlaccept nlaccept 4096 sep 4 12:16 policy
drwxr-xr-x 1 root root 4096 sep 19 14:57 report
--> chown -R --exclude report nlaccept:nlaccept ./MilesRoot
Malheureusement, l'option exclude (…)
J'aimerais faire un chown -R sur un répertoire en excluant un sous répertoire.
Ex:
[root@WW-NOITST08 miles]# ls -l ./MilesRoot
total 1376
drwxrwxrwx 3 nlaccept nlaccept 12288 sep 19 14:47 batch
drwxrwxrwx 3 nlaccept nlaccept 4096 sep 19 11:39 command
drwxrwxrwx 8 nlaccept nlaccept 4096 sep 4 12:16 milesweb
drwxrwxrwx 3 nlaccept nlaccept 4096 sep 4 12:16 policy
drwxr-xr-x 1 root root 4096 sep 19 14:57 report
--> chown -R --exclude report nlaccept:nlaccept ./MilesRoot
Malheureusement, l'option exclude (…)
Forum Programmation.shell petite erreur
Depuis pas mal d'années je me débrouille avec peu de connaissances en shell :)
mais j'ai décidé de pouvoir en coder plus qu'en bidouiller
j'ai une erreur avec ce script
#!/bin/bash
for file in *
if [ "$file" = "test" ]
then rm test
else
echo "ok"
fi
line 3: syntax error near unexpected token `if'
line 3: `if [ "$file" = "test" ]
Merci :)
mais j'ai décidé de pouvoir en coder plus qu'en bidouiller
j'ai une erreur avec ce script
#!/bin/bash
for file in *
if [ "$file" = "test" ]
then rm test
else
echo "ok"
fi
line 3: syntax error near unexpected token `if'
line 3: `if [ "$file" = "test" ]
Merci :)
Forum Programmation.shell galere sur un script
bonjour ,
j'utilise ceci dans un script :
ce bout de code doit parcourir le fichier , me compte le nombre de "c+un_chiffre" qu'il trouve , et si il en trouve plus que 0 il me le declare juste en dessous de la ligne qui contient (…)
j'utilise ceci dans un script :
for i in `seq 0 32`;
if [ "$(sed '/^[ ]*#\|#\|^$\|^\n*$/d' $file | grep c${i} | wc -l)" -gt "0" ]
then
j=$(($i+1))
sed -i -e '/\<hoplahop\>/a \temp c'${i}' = variable['$j']' $file
fi
done
ce bout de code doit parcourir le fichier , me compte le nombre de "c+un_chiffre" qu'il trouve , et si il en trouve plus que 0 il me le declare juste en dessous de la ligne qui contient (…)
Forum Programmation.shell [sed] substitution speciale
dans mon fichier j'ai des variables s0, s1, s2,.. , sn et je voudrait les substituer par variable[0]; variable[1]; variable[2]; variable[n];
comment faire svp
comment faire svp
Forum Programmation.shell [sed] supprimer les ligne blanche a la fin d'un fichier
bonjour
pour supprimer les lignes blanches uniquement a la fin d'un fichier j'utilise
sed -e :a -e '/^\n*$\|^[ ]*$\|^[ t]*$/ {$d;N;ba' -e '}' $file$tmp1 > $file$tmp2
mais ça ne fonctionne pas
quelqu'un aurait une idée????
merci
pour supprimer les lignes blanches uniquement a la fin d'un fichier j'utilise
sed -e :a -e '/^\n*$\|^[ ]*$\|^[ t]*$/ {$d;N;ba' -e '}' $file$tmp1 > $file$tmp2
mais ça ne fonctionne pas
quelqu'un aurait une idée????
merci
Forum Programmation.shell aide sur un script
bonjour, je suis en train de faire un script shell et je suis debutant donc je galere pas mal ,j'ai deja posté des post car j'ai l'impression d'avoir du mal a chaque ligne , donc je vais vous mettre le script entier pour que vous puissez m'aider a avoir un script correct
[CODE]
#!/bin/bash
#################################
#################################
prefix="OGL_"
tmp0="_tmp0_"
tmp1="_tmp1_"
tmp2="_tmp2_"
tmp3="_tmp3_"
tmp4="_tmp4_"
tmp5="_tmp5_"
end="END"
for file in [^$prefix]* #ici ça ne fonctionne pas, le script s'exécute également sur les fichier (…)
[CODE]
#!/bin/bash
#################################
#################################
prefix="OGL_"
tmp0="_tmp0_"
tmp1="_tmp1_"
tmp2="_tmp2_"
tmp3="_tmp3_"
tmp4="_tmp4_"
tmp5="_tmp5_"
end="END"
for file in [^$prefix]* #ici ça ne fonctionne pas, le script s'exécute également sur les fichier (…)
Forum Programmation.shell sed et caractères spéciaux
bonjour tout le monde
je continue a galerer avec mon script et sed:
je voudrait remplacer tous les "//" de mon fichier par "#"
j'ai essayer :
sed 's/"\/\/"/"\#"/g'
sed 's/"//"/"#"/g'
$doubleslash="//"
$diese="#"
sed 's/"'$doubleslash'"/"'$diese'/g'
sed 's/\<\x2F\x2F\>/\<\x23\>/g'
mais rien ne fonctionne, si quelqu'un peut m'éclairer
merci d'avance
je continue a galerer avec mon script et sed:
je voudrait remplacer tous les "//" de mon fichier par "#"
j'ai essayer :
sed 's/"\/\/"/"\#"/g'
sed 's/"//"/"#"/g'
$doubleslash="//"
$diese="#"
sed 's/"'$doubleslash'"/"'$diese'/g'
sed 's/\<\x2F\x2F\>/\<\x23\>/g'
mais rien ne fonctionne, si quelqu'un peut m'éclairer
merci d'avance
Forum Programmation.shell condition et script shell
bonjour
Avec un script , je voudrait, dans un répertoire donné, traiter tout les fichiers ne commençant pas par une chaîne de caractère ("aaa" par exemple ) et ne pas traiter nom plus mon fichier script qui se nomme automodif.sh
je me doute bien qui faut utiliser les conditionnels (if then else done) mais je ne sais pas comment traiter les nom de fichier pour savoir si effectivement il commence ou pas par "aaa"
quelqu'un aurait il un exemple
merci (…)
Avec un script , je voudrait, dans un répertoire donné, traiter tout les fichiers ne commençant pas par une chaîne de caractère ("aaa" par exemple ) et ne pas traiter nom plus mon fichier script qui se nomme automodif.sh
je me doute bien qui faut utiliser les conditionnels (if then else done) mais je ne sais pas comment traiter les nom de fichier pour savoir si effectivement il commence ou pas par "aaa"
quelqu'un aurait il un exemple
merci (…)
Forum Programmation.shell script bash avec sed
bonjour,
j'essaie de faire un petit script shell qui pourrait prendre tout les fichier d'un répertoire et remplacer les chaînes de caractères "add" et "mov" par ces même chaîne en majuscule ( c'est à dire "ADD" et "MOV") avec l'utilitaire SED , mais je n'y arrive pas , je n'arrive pas a trouver la bonne expression , est ce que quelqu'un pourrait me fournir un exemple ...
merci d'avance
j'essaie de faire un petit script shell qui pourrait prendre tout les fichier d'un répertoire et remplacer les chaînes de caractères "add" et "mov" par ces même chaîne en majuscule ( c'est à dire "ADD" et "MOV") avec l'utilitaire SED , mais je n'y arrive pas , je n'arrive pas a trouver la bonne expression , est ce que quelqu'un pourrait me fournir un exemple ...
merci d'avance
Forum Programmation.shell action sur le résultat d'une commande
Bonjour,
je cherche à supprimer des fichiers dans un répertoire, j'arrive à les lister mais pas à les passer dans la moulinette de rm.
c'est un ls avec plusieurs grep, ex :
ls | grep A | grep -v B | grep .C
et après j'arrive pas à supprimer le résultat.
Pareil avec mv, je veux ajouter une extension à une liste de fichier obtenus avec plusieurs grep.
Merci d'avance.
je cherche à supprimer des fichiers dans un répertoire, j'arrive à les lister mais pas à les passer dans la moulinette de rm.
c'est un ls avec plusieurs grep, ex :
ls | grep A | grep -v B | grep .C
et après j'arrive pas à supprimer le résultat.
Pareil avec mv, je veux ajouter une extension à une liste de fichier obtenus avec plusieurs grep.
Merci d'avance.
Forum Programmation.shell intervertir 2 caracteres d'une variable
supposons
a='ab'
je veux avoir ba
Si je veux intervertir ces 2 caracteres, est-ce que je peux utiliser la commande xp de vi qui les échange (dans sed/awk/xxx)?
Hélas je suis avec ksh, donc celui qui me répond d'utiliser rev -> pas possible :-(
merci
a='ab'
je veux avoir ba
Si je veux intervertir ces 2 caracteres, est-ce que je peux utiliser la commande xp de vi qui les échange (dans sed/awk/xxx)?
Hélas je suis avec ksh, donc celui qui me répond d'utiliser rev -> pas possible :-(
merci
Forum Programmation.shell cat /etc/fstab | fgrep -v $udi > /etc/fstab
Bonjour à tous,
Voilà, j'ai une petite ligne de shell script qui plante parfois, et je n'arrive pas à comprendre pourquoi:
Cette ligne est simplement supposée retirer toutes les lignes comprenant $udi (qui est toujours défini) du fichier fstab, $udi n'étant pas un motif complexe (une simple chaîne de caractères).
Parfois, et c'est hélas non reproduisible, je me retrouve avec un fstab totalement vide au lieu d'avoir juste le contenu du fichier (…)
Voilà, j'ai une petite ligne de shell script qui plante parfois, et je n'arrive pas à comprendre pourquoi:
cat /etc/fstab | fgrep -v $udi > /etc/fstab
Cette ligne est simplement supposée retirer toutes les lignes comprenant $udi (qui est toujours défini) du fichier fstab, $udi n'étant pas un motif complexe (une simple chaîne de caractères).
Parfois, et c'est hélas non reproduisible, je me retrouve avec un fstab totalement vide au lieu d'avoir juste le contenu du fichier (…)
Forum Programmation.shell Read
M & Mme Linuxiens, Bonjour !
Voici l'exposé de ma requette :
Imaginons un programme qui dit ceci :
Problème : l'invite pour entrer le texte ( la commande read) est assez moche à utliser ! On ne peut pas naviguer dans le texte, ni effacer plusieurs lignes, etc. Pour bien faire, il me faudrait un truc du genre :
C'est à dire une variable que je puisse (…)
Voici l'exposé de ma requette :
Imaginons un programme qui dit ceci :
read message
...
wget "index.php?text=$message"
Problème : l'invite pour entrer le texte ( la commande read) est assez moche à utliser ! On ne peut pas naviguer dans le texte, ni effacer plusieurs lignes, etc. Pour bien faire, il me faudrait un truc du genre :
touch text
emacs -nw text
message="cat text"
C'est à dire une variable que je puisse (…)
Forum Programmation.shell find et incomplete statement
Bonjour
Je commence un script pour détruire différents fichiers dans des directories suivant plusieurs critères.
Pour l'instant mon script s'arrête sur le find avec '"incomplete statement", alors que si je lance la ligne affichée (si je le lance avec ksh -x -v script)
la même commande trouve plein de fichiers
Mon script
#!/usr/bin/sh
#
dir1="/tmp"
typ1="-type f"
ret1=5
fin="-print -exec ls -al {} \;"
find $dir1 $typ1 -mtime +$ret1 $fin
$
Lancé avec -x -v, ça donne
+ find /tmp (…)
Je commence un script pour détruire différents fichiers dans des directories suivant plusieurs critères.
Pour l'instant mon script s'arrête sur le find avec '"incomplete statement", alors que si je lance la ligne affichée (si je le lance avec ksh -x -v script)
la même commande trouve plein de fichiers
Mon script
#!/usr/bin/sh
#
dir1="/tmp"
typ1="-type f"
ret1=5
fin="-print -exec ls -al {} \;"
find $dir1 $typ1 -mtime +$ret1 $fin
$
Lancé avec -x -v, ça donne
+ find /tmp (…)
Forum Programmation.shell liens symboliques récursifs pour fichiers avec espaces
bonsoir les vétérans du shell !
J'ai un dossier avec des sous-dossiers contenant des espaces. Ces sous-dossiers contiennent eux-même des fichiers avec parfois des espaces.
[http://www.inform-fiction.org/I7Downloads/Extensions/]
C'est pour un programme dont la version linux vient de sortir récemment, et malheureusement pour la version linux il faut avoir les noms de tous ces fichiers en minuscules (mais avec espace). Il faut donc utiliser des liens symboliques vers les fichiers avec les majuscules. Si ce n'était que cela, cela pourrait (…)
J'ai un dossier avec des sous-dossiers contenant des espaces. Ces sous-dossiers contiennent eux-même des fichiers avec parfois des espaces.
[http://www.inform-fiction.org/I7Downloads/Extensions/]
C'est pour un programme dont la version linux vient de sortir récemment, et malheureusement pour la version linux il faut avoir les noms de tous ces fichiers en minuscules (mais avec espace). Il faut donc utiliser des liens symboliques vers les fichiers avec les majuscules. Si ce n'était que cela, cela pourrait (…)
Forum Programmation.shell Savoir si un rsync s'est bien derouler
Bonjour,
voila je fais un script bash pour sauvegarder des données. pour cela j'utilise rsync a travers un ssh
une fois les données transferé, je les gzip et je stock sur un repertoire de mon linux
mais la connection que j'utilise entre les 2 machine est instable (adsl) et la taille des fichiers importantes.
Il arrive donc que le tunnel ssh soit coupé et cela coupe rsync
j'aimerai savoir si le rsync c'est bien deroulé ou pas (si il s'est (…)
voila je fais un script bash pour sauvegarder des données. pour cela j'utilise rsync a travers un ssh
une fois les données transferé, je les gzip et je stock sur un repertoire de mon linux
mais la connection que j'utilise entre les 2 machine est instable (adsl) et la taille des fichiers importantes.
Il arrive donc que le tunnel ssh soit coupé et cela coupe rsync
j'aimerai savoir si le rsync c'est bien deroulé ou pas (si il s'est (…)
Forum Programmation.shell Imprimer les lignes avant et apres l'expression rechercher
J'ai un fichier avec le format suivant :
Est ce qu'il y a une commande sous unix qui permet d'avoir en sortie tous les nom des fichiers avec : "processed : 0", (…)
Fichier : mon_fichier1
Begin : 2007-08-29
processed : 0
End : 2007-08-29
Fichier : mon_fichier2
Begin : 2007-08-29
processed : 4
End : 2007-08-29
Fichier : mon_fichier3
Begin : 2007-08-29
processed : 6
End : 2007-08-29
Fichier : mon_fichier4
Begin : 2007-08-29
processed : 0
End : 2007-08-29
Est ce qu'il y a une commande sous unix qui permet d'avoir en sortie tous les nom des fichiers avec : "processed : 0", (…)
Forum Programmation.shell Substitution en bash
Bonsoir,
J'ai un chaîne de caractères du type :
/un chemin/vers un/fichier
dans la variable FILE
et je souhaiterais en faire :
/un\ chemin/vers\ un/fichier
et le mettre de FILE2
Je ne comprends pas pourquoi
FILE2=${FILE/ /\\ /}
me renvoie :
FILE2=${FILE/ /\\ /}
Si quelqu'un pouvait me renseigner...
Merci d'avance
J'ai un chaîne de caractères du type :
/un chemin/vers un/fichier
dans la variable FILE
et je souhaiterais en faire :
/un\ chemin/vers\ un/fichier
et le mettre de FILE2
Je ne comprends pas pourquoi
FILE2=${FILE/ /\\ /}
me renvoie :
FILE2=${FILE/ /\\ /}
Si quelqu'un pouvait me renseigner...
Merci d'avance
Forum Programmation.shell Comportement étrange de /bin/more
Voilà, je me demandais pourquoi /bin/more, intégré dans un script bash, se comportait différemment lorsque ledit script est lancé depuis un lanceur/menu du bureau (en l'occurence Gnome) oubien dans un terminal.
Dans un terminal (dont le shell est bash), /bin/more m'affiche bien le contenu du fichier passé en argument.
Depuis un raccourci, il rajoute en première ligne "::::::::::: /chemin/du/fichier :::::::::::".
C'est d'autant plus embêtant que ça ne le faisait pas avant !
Avant quoi ? récemment je suis passé de (…)
Dans un terminal (dont le shell est bash), /bin/more m'affiche bien le contenu du fichier passé en argument.
Depuis un raccourci, il rajoute en première ligne "::::::::::: /chemin/du/fichier :::::::::::".
C'est d'autant plus embêtant que ça ne le faisait pas avant !
Avant quoi ? récemment je suis passé de (…)
Forum Programmation.shell Nommage avec incrémentation automatique.
Bonjour,
Je me suis crée un script qui me permet de faire des copies d'écrans.
Les fichiers générés sont stockés dans mon répertoire utilisateur.
Je souhaiterai utiliser un mécanisme simple me permettant d'attribuer un nom unique à chacun de ces fichiers.
Je voudrais une incrémentation classique du type :
Screenshot 1
Screenshot 2
etc ..
Ou mieux avec insertion de 0 pour que le tri lexicographique soit pertinent :
Screenshot 01
Screenshot 02
etc ..
Pour l'instant je suis en (…)
Je me suis crée un script qui me permet de faire des copies d'écrans.
Les fichiers générés sont stockés dans mon répertoire utilisateur.
Je souhaiterai utiliser un mécanisme simple me permettant d'attribuer un nom unique à chacun de ces fichiers.
Je voudrais une incrémentation classique du type :
Screenshot 1
Screenshot 2
etc ..
Ou mieux avec insertion de 0 pour que le tri lexicographique soit pertinent :
Screenshot 01
Screenshot 02
etc ..
Pour l'instant je suis en (…)
Forum Programmation.shell Plus de 9 parenthèses de mémorisation ?
bonjour
Quand on utilise des parenthèses de mémorisation, avec SED par exemple, on identifie son contenu à un chiffre que l'on écrit de cette façon : \1 \2 etc...
Mais comment cela se passe-t-il quand on arrive à dix ? De quelle façon doit-on le noter ?
<voici un exemple :
echo abcdefghij | sed 's#\(a\)\(b\)\(c\)\(d\)\(e\)\(f\)\(g\)\(h\)\(i\)\(j\)#\1\2\3\4\5\6\7\8\9\10#'
Comment fais-je pour récupérer le "j" ?
Merci d'avance