Forum Programmation.shell chown récursif avec exclusion de répertoire

Posté par  .
Étiquettes : aucune
0
20
sept.
2007
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 (…)

Forum Programmation.shell petite erreur

Posté par  .
Étiquettes : aucune
0
18
sept.
2007
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 :)

Forum Programmation.shell galere sur un script

Posté par  .
Étiquettes : aucune
0
18
sept.
2007
bonjour ,
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 aide sur un script

Posté par  .
Étiquettes : aucune
0
13
sept.
2007
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 (…)

Forum Programmation.shell sed et caractères spéciaux

Posté par  .
Étiquettes : aucune
0
13
sept.
2007
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

Forum Programmation.shell condition et script shell

Posté par  .
Étiquettes : aucune
0
12
sept.
2007
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 (…)

Forum Programmation.shell script bash avec sed

Posté par  .
Étiquettes : aucune
0
12
sept.
2007
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

Forum Programmation.shell action sur le résultat d'une commande

Posté par  .
Étiquettes : aucune
0
12
sept.
2007
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.

Forum Programmation.shell cat /etc/fstab | fgrep -v $udi > /etc/fstab

Posté par  .
Étiquettes : aucune
0
10
sept.
2007
Bonjour à tous,

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

Posté par  .
Étiquettes : aucune
0
8
sept.
2007
M & Mme Linuxiens, Bonjour !

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

Posté par  (site web personnel) .
Étiquettes : aucune
0
6
sept.
2007
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 (…)

Forum Programmation.shell liens symboliques récursifs pour fichiers avec espaces

Posté par  .
Étiquettes : aucune
0
1
sept.
2007
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 (…)

Forum Programmation.shell Savoir si un rsync s'est bien derouler

Posté par  .
Étiquettes : aucune
0
31
août
2007
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 (…)

Forum Programmation.shell Imprimer les lignes avant et apres l'expression rechercher

Posté par  .
Étiquettes : aucune
0
30
août
2007
J'ai un fichier avec le format suivant :


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

Posté par  .
Étiquettes : aucune
0
24
août
2007
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

Forum Programmation.shell Comportement étrange de /bin/more

Posté par  .
Étiquettes : aucune
0
23
août
2007
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 (…)

Forum Programmation.shell Nommage avec incrémentation automatique.

Posté par  .
Étiquettes : aucune
0
20
août
2007
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 (…)

Forum Programmation.shell Plus de 9 parenthèses de mémorisation ?

Posté par  .
Étiquettes : aucune
0
16
août
2007

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

Forum Programmation.shell Copier le contenu d'un fichier dans un autre

Posté par  .
Étiquettes : aucune
0
7
août
2007
Bonjour,

Je souhaiterai copier le contenu d'un fichier pour le mettre dans un autre . Exemple :

J'ai un fichier source qui contient une 30aine de lignes, on va dire qu'il s'appelle fic_source.txt

Le fichier de destination (là où doit être copié le contenu de fic_source.txt) s'appelle fic_dest.conf.

Comment faire pour mettre le contenu de fic_source.txt à la suite de fic_dest.conf, sans mettre de "echo "blabla" >> fic_dest.conf" pour chaque ligne ?

Merci d'avance ;)

Forum Programmation.shell CSH: ps

Posté par  .
Étiquettes : aucune
0
6
août
2007
Bonjour à tous,

J'aimerais filtrer les processus actif, activable (dont l'état est O et R ) et je ne vois pas très bien comment je pourrais faire de manière simple en csh.

J'utilise ps pour obtenir des infos sur les process , mais je ne vois rien de le man qui pourrait m'aider.

Je pense utiliser awk , qu'en pensez vous ?

D'avance merci pour votre aide

Forum Programmation.shell dbus

Posté par  .
Étiquettes : aucune
0
6
août
2007
bonjour, :-)

il est possible lorsque que l'on connait le chemin et l'instance d'un programme relier a dbus de lister ces methodes et parametre mais comment a partir d'un executable ou d'un processus peut ton le savoir :
par exemple rythmbox :
org.gnome.Rhythmbox /org/gnome/Rhythmbox/Player

sinon pour les methodes j'utilise :
dbus-send --session --type=method_call --print-reply --dest=org.gnome.Rhythmbox /org/gnome/Rhythmbox/Player org.freedesktop.DBus.Introspectable.Introspect

quelqu'un a une idée?

Forum Programmation.shell recherche d'une ancienne commande utilée dans le shell

Posté par  (site web personnel) .
Étiquettes : aucune
0
6
août
2007
Bonjour

J'ai déjà vu cette astuce sur le site mais impossible de la retrouver.
Donc je repose la question

Dans le shell, on peut "remonter" sur les dernières commandes utilisées.
Comment retrouver dans cette série de commandes, une en particulier via un mot clé.

par exemple je voudrais retrouver toutes les commandes passées dans le shell contenant rsync , comment faire ?

Merci