Forum Programmation.shell rechercher / remplacer multiligne

Posté par . Licence CC by-sa
Tags : aucun
0
14
oct.
2013

Bonjour,
sur un site web dont je gere le serveur, nous avons une verole.

J'ai trouvé le motif à supprimer de plusieurs fichiers.
ce motif s'obtient facilement en faisant

grep -B12 -A15 aHR0cDovL21icm93c2Vyc3RhdHMuY29tL3N0YXRIL3N0YXQucGhw index.php

maintenant je voudrais supprimer ces lignes du fichier index.php
j'ai pensé à sed/awk, mais je ne sais pas comment lui dire de prendre les 12 lignes avant le motif, et 15 lignes apres pour les remplacer par "rien"

evidemment s'il n'y avait qu'un seul fichier, je (...)

Forum Programmation.shell [Résolu] BASH : "Gras", mais pas "clair" ?

Posté par . Licence CC by-sa
Tags : aucun
4
26
sept.
2013

Bonjour, bonsoir !

Une petite question toute bête et pas très utile mais une question quand même :
'echo -e "\e[32mYO"' va écrire 'YO' en vert foncé
'echo -e "\e[92mYO"' va écrire 'YO' en vert clair
'echo -e "\e[1;32mYO"' va écrire 'YO' en vert clair gras (de même pour ''echo -e "\e[1;92mYO"'')

La question : Peut-on écrire 'YO' en vert foncé gras ? :p

(La question s'étend aussi au 'vert sombre' (\e[2;31m) peut-on écrire en vert sombre gras ?)

Forum Programmation.shell Fonctions et alias de même noms, et surcharge d'alias

Posté par (page perso) . Licence CC by-sa
Tags :
3
5
août
2013

Bonjour,

J'ai deux questions à propos du shell sous GNU/Linux (bash ou zsh).

==> Si un alias et une fonction de même nom existent, comment savoir laquelle sera appelée ?
Ex :

alias rr='echo Hello'
rr () { command echo Hello "$@"; }

Dans ce cas, c'est ennuyeux avec zsh : à la définition de la fonction rr, le nom est remplacé par l'alias, et c'est echo qui va être remplacé par la fonction définie… (et donc, rr world renvoie (...)

Forum Programmation.shell Chroot avec les binaires de base d'un OS

Posté par (page perso) . Licence CC by-sa
Tags : aucun
1
3
août
2013

Bonjour,

il me semble avoir lu y a pas longtemps sur linuxfr qu'il y aurait une commande pour copier les binaires de base de l'OS (ls, mv, etc. en gros surtout ce qu'on va trouver dans /bin j'imagine), mais aussi pour choisir une liste supplémentaire d'outils a inclure dans le chroot. Mais je n'arrive pas a retrouver ce post ni a trouver d'information a ce sujet sur le net (cependant je me dis qu'un tel outil serait probablement spécifique a (...)

Forum Programmation.shell Quoter une variable contenant des arguments de ligne de commande

Posté par . Licence CC by-sa
Tags :
0
16
juin
2013

J'ai un script bash qui fait une sauvegarde incrémentale dans un tar.gz. Une des variables de configuration doit contenir un nom de répertoires avec caractère générique (glob), et je n'arrive pas à le faire passer

## Configuration de sauvegarde
##############################
repertoires="/home/jgo
/var/spool/mail/jgo"
liste_exclusion="--exclude \"/home/jgo/divers/*\" --exclude \"/home/jgo/.recoll/xapiandb/*.DB\""
ciblelocale=/var/backup/

## autres options
#################

timestampsauvegarde=/home/jgo/timestamp-sauvegarde
nouvelledate=`date "+%s"`
nomclair=${ciblelocale}backup_${nouvelledate}.tar.gz
temp=/tmp/
liste
(...)

Forum Programmation.shell Array not found

Posté par (page perso) . Licence CC by-sa
Tags : aucun
0
11
juin
2013

Bonjour,

Je suis confronté à un problème dont je ne trouve pas la solution. Dans un script je suis amené à utiliser des tableaux pour stocker des valeurs. Sur tout mes serveurs (redhat) ça marche sauf sur un qui n'est pas la même distri (openmediavault).

J'ai reproduis le problème avec une version simplifié du script

#!/bin/bash

bash --version

declare -a myarray[0]="hello"
declare -a myarray[1]="world"

prtinf "${myarray[*]}"
printf "\n"

Cette version me donne

#sh test.sh 
GNU bash, version 4.1.5(1)-release (x86_64-pc-linux-gnu)
Copyright
(...)

Forum Programmation.shell Différentes version du shell ?

Posté par (page perso) . Licence CC by-sa
Tags : aucun
1
6
juin
2013

Bonjour, j'ai commencé à apprendre le shell hier afin d'écrire deux script dont l'un permet de lancer un binaire et le second d'installer un binaire et ses fichiers. Pas de soucis, car tout fonctionne correctement sur une distribution récente (FC18 et ArchLinux), cependant lorsque j'ai testé le script d'installation sur Ubuntu 12.04, il a commencé à paniquer en me renvoyant quelques erreurs de syntaxe.

Donc j'en viens à ma question, est-ce qu'ils existe une syntaxe différente en fonction de chaque (...)

Forum Programmation.shell gawk traitement du port serie ttyS0

Posté par . Licence CC by-sa
Tags :
0
23
mai
2013

bonjour

j'ai un appareil sur ttyS0 en 115200 8b 1stop qui émet des distances sous la forme :

12.25^M
13.89^M
14.89^M
15.89^M
25.87^M

mon script :
cat /dev/ttySO | dos2unix -l | gawk '{print strftime ("%F %T", -bash;}'

cela a fonctionné correctement :( quelques temps résultat attendu :

2013-05-22 12:45:26 12.25
2013-05-22 12:45:26 13.89

lorsque j'ai sauvegardé le script pour le retrouver plus tard avec la commande :
echo " cat /dev/ttySO | dos2unix -l | gawk '{print strftime (...)

Forum Programmation.shell Temps depuis le dernier arret

Posté par . Licence CC by-sa
Tags : aucun
3
3
mai
2013

Bonjour,

Je cherche à connaitre le temps depuis la dernière extinction du système (même brutale).
Mais je ne sais pas où trouver cette info.
Le petit bonus serai de savoir différencier un arret fait proprement d'une coupure de courant.

Pour la petite histoire, le but c'est de savoir (avec mon raspberry pi) combien de temps a pu durer une coupure de courant pour par exemple savoir si ce qui est dans le congélo a pas trop morflé.

Si vous avez (...)

Forum Programmation.shell Tiens, là je vois pas...

Posté par (page perso) . Licence CC by-sa
Tags : aucun
3
29
avr.
2013
#!/bin/bash
while read a 
do
        echo $a
        ssh rsync@kevin mkdir /tmp/plop
done <  /tmp/rsync_perso

Ce petite bout de code (pour l'exemple) me pose problème…

Meme si mon fichier /tmp/rsync_perso contient plusieurs lignes, le résultat sera le suivant:

[gnumdk@arch ~]$ bash p.sh 
Perso/plop/

Si je remplace la commande ssh par n'importe quoi d'autre, alors il boucle sur l'ensemble du fichier…

Une idée ?

Forum Programmation.shell AWK fusionner 2 script

Posté par . Licence CC by-sa
Tags : aucun
0
8
avr.
2013

bonjour

j'utilise 2 script pour synchroniser des logs avec une video, ca fonctionne pas mal du tout. pour simplifier l'usage je souhaite en faire qu'un. Mes essais ne donne pas le resultat attendu, soit j'ai une partie qui fonctionne soit rien du tout.

les logs sont sous la forme :

13
15
16

que je transforme en srt :

1
00:00:00,000 --> 00:00:00,000
13

2
00:00:00,000 --> 00:00:00,000
15

puis mon second script s'occupe de l'horodatage

1
00:00:00,004 (...)

Forum Programmation.shell Calcul occupation disque dur d'un exécutable

Posté par . Licence CC by-sa
0
8
avr.
2013

Bonjour à tous

Pour tracer la consommation disque dur lors de l'exécution d'un logiciel de traitement d'images que l'on développe dans ma boîte, j'ai développé rapidement un petit script shell qui fait à intervalle régulier des "df" et exporte les résultats au format CSV.
De la même façon, pour tracer la consommation CPU j'utilise "top" en mode batch.

Dans les deux cas mes scripts marchent très bien mais je suis confronté à des difficultés :
- le parsing de la (...)

Forum Programmation.shell [Résolu] Exécuter un script contenu dans une variable

Posté par . Licence CC by-sa
Tags : aucun
0
26
mar.
2013

Bonjour, bonsoir,

Comment peut-on exécuter le script contenu dans une variable ?
Avec les fonctions composées d'une seule partie ça fonctionne :

var="echo salut"
$var
  salut

Mais dès qu'on utilise des fonctions plus compliquées, bash ne comprend plus :

var="for ((i=0,i<9,i+=1)); do echo $i; done"
$var
  bash: for: command not found

De même pour :

while  if ...

Merci de votre lecture !

Forum Programmation.shell [Résolu] Redirections entre terminaux

Posté par . Licence CC by-sa
Tags : aucun
1
25
mar.
2013

Bonjour, bonsoir

J'ai écris un programme console dans lequel est présent une sous-partie de recherche.
Cette sous-partie est constituée de deux programmes qui tournent en parallèle :
Un programme visuel dans lequel l'utilisateur peut renseigner le mot qu'il désire chercher :
"
Quel mot voulez-vous rechercher :
--> mot : _

--> expression 1
expression 2
expression …
"
Le but de cette sous partie est de faire un système de recherche dynamique, au sens ou la liste des expression (...)

Forum Programmation.shell Surveiller l'usage des inodes

Posté par . Licence CC by-sa
Tags :
1
5
mar.
2013

La problématique : Certains serveurs font tourner certaines applications qui chient du fichier (par exemple snort sans un -K None), il faut avoir un œil dessus.

Une solution serait de profiter du fonctionnement de cron qui envoie un mail si et seulement si la commande lancée produit quelque chose sur stdout avec un truc comme ça :

df -iPh | tail -n +2 | sed -e 's/  */;/g' | cut -d';' -f 1,5 | awk -F';' '{print $2,"\t",$1}'
(...)

Forum Programmation.shell action simultanée

Posté par . Licence CC by-sa
Tags : aucun
2
4
fév.
2013

Actuellement j'ai une script récoltant des informations sur différent poste du réseau à l'aide d'une liste d'adresse contenu dans un fichiers config . Cependant c'est action se font 1 par 1 et j'aimerai faire ces récoltes simultanément . je suis sur cent os et justilse un :

while read IP do 

{action $IP}

done <ip.cfg

Merci de votre aide

Forum Programmation.shell Script de purge sous linux

Posté par . Licence CC by-sa
Tags : aucun
1
1
fév.
2013

Bonjour,
Explication du contexte…
J'ai des switchs CISCO qui envoient leur configuration sur un serveur tftp automatiquement a chaque modification de celle ci sur l'equipement.
L'objectif est de garder seulement 5 sauvegardes, soit les 5 plus recentes.
La forme du nom des fichiers est:
switch01-421--Mar--1-1993-01-03-34.974-GMT-0
Où "switch01" correspond au nom de l'equipement; "421" represente l'usine où est l'equipement (qui pourrait etre supprimé); ensuite la date, et tout a la fin un numero d'increment (le numero d'increment repart a "0" a (...)

Forum Programmation.shell Lancer une application sur un TTY distinct depuis un démon

Posté par . Licence CC by-sa
3
30
jan.
2013

Bonjour,

J'ai une tâche en fond (un démon sous utilisateur root) qui vérifie à intervalle périodique un événement. Lorsque cet événement se produit, je veux que l'utilisateur physiquement connecté sur la machine soit averti de cet événement et qu'il lui soit soumis une fenêtre de dialogue lui permettant de choisir la suite des actions.

Lorsque que l'événement se déclenche, le démon me permet d'exécuter des scripts shell. Le fonctionnement de mon script actuel est le suivant : tout d'abord, récupérer (...)

Forum Programmation.shell Format adresse mac

Posté par . Licence CC by-sa
Tags : aucun
2
29
jan.
2013

je suit confronté a un petit problème , j'ai une jointure à faire sur des champ de type adresse MAC, cependant je ne peut pas les trier car dans un des deux fichier les adresse MAC se présente 0:17:31:5a:9:34 au lieu de 00:17:31:5A:09:34 . Comment remettre l'adresse au bon formata sur tous les fichier ?