Forum Programmation.shell ksh : exclusion d'une série de fichier dans un tar : prb d'expension

Posté par  . Licence CC By‑SA.
Étiquettes :
0
21
avr.
2015

Je bute sur un truc qui me gave depuis plusieurs heures : j'ai un script qui crée une archive d'où je veux exclure certains fichiers.
En gros, ca fait :

    #!/bin/ksh
    export TAR_EXCLUDE="--exclude '*var/cache/*'"
    tar $TAR_EXCLUDE -pvczf ~/tmp/archive.tgz appli/

et mon repertoire appli est constitué de :
appli/
appli/bidule/fichier.txt
appli/truc/a/mettre/dans/le/TGZ
appli/non/var/cache/pas/ce/truc/dans/le/tgz
appli/non/plus/var/cache/pas/dans/le/tgz
appli/et/ca/dedans.txt

Je veux exclure "var/cache" (et tout ce qu'il contient) de mon archive, sachant que cette structure n'est pas forcément à la racine de appli.

J'ai (…)

Forum Programmation.shell Bashrc avec paramètre ?

Posté par  . Licence CC By‑SA.
Étiquettes :
1
12
avr.
2015

Bonjour,
J'effectue régulièrement la copie du même dossier depuis ma session dans mon école (sous debian 7 (sans accès root bien sur)) vers mon serveur (sous debian 7 également). En toute logique, il suffirais de faire un scp depuis le serveur (impossible dans l'autre sens, ssh ne fonctionne pas vers une ip externe à l'école).
Sauf que, à l'école j'affiche une image en ascii art au chargement du bashrc, ce qui fait planter scp, en couleur en plus avec tput (…)

Forum Programmation.shell awk et HP-UX

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes : aucune
1
9
fév.
2015

Je cherche à faire un truc simpliste sous awk, récupérer 2 champs sur une ligne, un autre sur la suivante et tout afficher.
Mon script awk

(/Device/) {
bec=$1
int=$4
}
(/MAC add/) {print bec,int,$1}

Quand je lance mon script

# awk -f a.awk bl.MAC
 syntax error The source line is 3.
 The error context is
                 >>> int= <<< $4
 awk: The statement cannot be correctly parsed.
 The 
(…)

Forum Programmation.shell IFS= et imbrication

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
16
jan.
2015

Bonjour,

J'ai un fichier CSV avec des lignes du genre :

AEQF;bla;bli;blu;ju;jo;toto;foo|bar|baz
SEQI;hik;hop;kii;ji;ju;titi;fii|gii|hop

Je souhaite parcourir chaque ligne, mettre chaque champ dans un tableau et traiter le dernier champ de manière particulière en le « splitant » à son tour. Voici le code :

# Boucle sur le tableau "lines", pour chaque élément définition d'un tableau "fields"
for l in "${lines[@]}"
  do
    while IFS=';' read -a fields
    do
      case "${fields[0]}" in
      "AEQF")
        while IFS='|' read -a hostgroups
          
(…)

Forum Programmation.shell awk : imbrications de commandes

Posté par  . Licence CC By‑SA.
Étiquettes :
1
14
jan.
2015

Bonjour à toutes et à tous :)

Je présente tout d'abord mon faible niveau en programmation, afin que vous puissiez adapter vos réponses, à mon niveau de compréhension :)

J'ai un niveau débutante en python (fonctions, boucles, listes…), php (pas script mais plutôt interrogation avec base sql), je me débrouille bien en expressions régulières, en cut et sed. Me sont inconnus c, js, javaj, c++.

J'avance dans la douleur, et n'ai pas forcément le bon vocabulaire pour trouver réponse sur (…)

Forum Programmation.shell automatiser installation de paquets (apt-get) et modification fichiers de confiG

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
1
31
déc.
2014

Bonjour à tous,

Je reviens vers vous pour un petit renseignement. Est-il possible de créer un script qui automatiserait l'installation de plusieurs paquets via la commande apt-get? Genre un script qui installerait apache2, php5 et mysql?
De plus toujours avec celui-ci, puis-je copier certains fichiers de confiG (pour en garder une trace en cas de bug) et remplacer ceux_ci par mes propres fichiers de config?
En gros, je cherche à accélérer l'installation d'un serveur LAMP.
Si tout cela est possible (…)

Forum Programmation.shell Aide sur commande uniq pour dédoublonner fichier

Posté par  . Licence CC By‑SA.
Étiquettes :
0
18
déc.
2014

Bonjour,

Je dois supprimer les doublons dans un fichier texte assez gros (300Mo) en respectant un masque particulier.

Exemple de lignes contenues dans le fichier :

03A99999999   2015-01-08-00.00.01.000000+000076800,00020150109

Pour la suppression des doublons je ne dois pas tenir compte des caractères 14 à 40.

Avez vous une idée de comment appliquer ce masque dans uniq ?

Par avance, merci.

Forum Programmation.shell Problème find avec ctime

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
30
oct.
2014

Bonjour,

J'ai petit soucis avec find et ctime, je vous explique.

2 dumps d'une base postgres sont exécutés tous les jours, un a 2h00 du matin l'autre a midi.
y'a un bout de script simple qui vérifie que le dump s'est déroulé correctement et si c'est le cas efface le fichier de dump le plus ancien avant de placer le nouveau dans le bon répertoire

FILE=db_test.`date +\%d.\%m.\%Y`.dump 

pg_dump
(…)

Forum Programmation.shell Lancer un service systemd par période avec cron

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes : aucune
4
14
oct.
2014

Salut, j'ai crée un script pour lancer un serveur de jeu et j'ai décidé de lui attribuer un service sur systemd. Le tout marche très bien, mais j'aimerais que le service s'exécute et se termine à certaine période, l'idéal serait un démarrage tous les soirs à 20h et une fin à 2h. Comme je n'ai pas l'habitude d'utiliser cron et de mettre en place ce genre de configuration (oui c'est ma première fois), j'aurais besoin de vos conseils. La seule (…)

Forum Programmation.shell script shell qui ne fonctionne pas à partir de crontab

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
1
oct.
2014

Bonjour,
Voici un script qui fonctionne très bien en commande mais pas lorsqu'il est lancé du cron.
Le script teste simplement le service squid et le redémarre en cas de crash en envoyant une alerte mail.
Le problème est que quand il est lancé par cron il détecte tout le temps qu'il est mort, en gros il sait pas faire le "if [ $var = '']", mais en le lançant en direct avec "./check_squid.sh" ça fonctionne.

---------- Voici le code (…)

Forum Programmation.shell Script Bash, tronquer noms de fichiers pour eCryptFS

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
3
16
sept.
2014

Ce script fonctionne déjà ici en production.

Je cherche à l'optimiser car je l'utilise depuis peu sur un plus gros dossier.

Contexte :

Nous souhaitons effectuer des sauvegardes externes de sorte à prévenir l'incendie ou le cambriolage.
Nous souhaitons que cette copie externe soit chiffrée.
Actuellement, elle se trouve sur un disque externe mais sera bientôt synchronisée à partir d'une machine extérieur, via internet (rsync).

eCryptfs est utilisé dans un premier temps pour obtenir une version chiffrée d'une sauvegarde locale (…)

Forum Programmation.shell Problème resolution ip locale

Posté par  . Licence CC By‑SA.
Étiquettes :
0
4
sept.
2014

Bonjour à tous,
je viens de me coder un petit script que je lance au démarrage de Debian sur un serveur en local.

[code]

iplocale=$(ifconfig wlan0 | grep "inet adr" | cut -f2 -d: | awk '{print $1}')
ippublic=$(wget -qO- http://62.210.182.92/ip_api.php)

wget --no-check-certificate -qO- "https://smsapi.free-mobile.fr/sendmsg?msg=Message+du+raspberry+pi+%3A%0D%0AMon+ip+locale+est+$iplocale%0D%0AMon+ip+externe+est+$ippublic%0D%0A%0D%0A&pass=monpass&user=monuser"

[/code]

En gros le script cherche d'abord l'ip locale de la machine et ensuite l'ip externe, le tout est envoyé a l'api d’envoi de sms de free.
Le script tourne bien en (…)

Forum Programmation.shell Lire des logs au fur et à mesure

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
1
11
juil.
2014

Bonjour,

j'ai besoin de lire des log (ceux d'un serveur web), et de les analyser pour en extraire certaines informations.

Pour extraire les infos, je vais utiliser awk, qui conviendra parfaitement.

Le fichier de log est rempli au fur et à mesure, et de temps en temps il y a une rotation.
Il faudrait que je puisse obtenir a chaque interval de temps les derniers logs, pour éviter les doublons et m'assurer que je ne vais pas non plus manquer (…)

Forum Programmation.shell awk et les colonnes

Posté par  . Licence CC By‑SA.
Étiquettes :
0
5
juil.
2014

Bonjour,

J'ai un fichier avec de nombreuses lignes qui ont toutes la même longueur, quelques caractères. Je souhaite mettre le contenu de ce fichier sur plusieurs colonnes. J'ai trouvé cette solution qui me convient :

awk 'NR%9==1{print " "}{printf "%s %s %s %s %s %s %s %s %s",$1, $2, $3, $4, $5, $6, $7, $8, $9}' input > output

pour neuf colonnes.

Je vous sollicite pour deux questions :

  1. Est-ce que cela peut s'écrire plus proprement ?

  2. Avec ma solution on (…)

Forum Programmation.shell afficher le nom du process complet dans top, ou glance (HP-UX)

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes : aucune
0
1
juil.
2014

Bonjour

J'ai des BL870c i2 sous HP-UX B.11.31 avec un bon nombre de VM.

Quand je fais top ou que je lance glance, j'ai des noms de process hpvmapp, qui apparaissent avec
ps -ef
en
hpvmapp -d vm4102
ou
hpvmapp -d vm4119

Evidemment ce qui m'intéresse c'est le nom de la VM qui consomme beaucoup.
Sous HP-UX, top -c n'existe pas :-(

Comment est-ce que je peux afficher
- un nom de process plus long
- la commande complète
?

(…)

Forum Programmation.shell [Résolu] Appel de SSH depuis un Shell script (Bash)

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
1
13
juin
2014

Bonjour,

En voulant appeler SSH depuis un script Shell (Bash), j'ai les erreurs suivantes : Pseudo-terminal will not be allocated because stdin is not a terminal. et stdin: is not a tty

Ma ligne de commande pour appeler le SSH est la suivante :
DISPLAY=y SSH_ASKPASS=filename setsid ssh -t -X -o 'PreferredAuthentications password,keyboard-interactive' -o 'StrictHostKeyChecking no' ${1:-}

En googlant un peu, j'ai essayé la méthode indiquant d'ajouter un -t et donc avec la ligne de commande suivante, j'ai une autre (…)

Forum Programmation.shell Isoler une chaine de caractère et compter son nombre d'occurrences

Posté par  . Licence CC By‑SA.
Étiquettes :
1
4
juin
2014

Hello,

Je cherche un moyen d'extraire d'une capture de mon trafic DNS certains sites et d'en afficher le nombre d’occurrence.

Le fichier que je récupère est sous ce format :

14:15:37.837411 IP 109.215.228.235.23582 > 81.253.149.2.53: 25335+ A? b.fc.namequery.com. (36)
14:15:37.837930 IP 80.10.202.65.30568 > 209.53.113.4.53: 59709 [1au] A? b.fc.namequery.com. (47)
14:15:44.746399 IP 109.215.90.49.1024 > 81.253.149.2.53: 7376+ A? search.namequery.com. (38)
14:15:49.456342 IP 82.121.161.41.1024 > 81.253.149.1.53: 26292+ A? search.namequery.com. (38)
14:15:49.456865 IP 80.10.202.103.3499 > 209.53.113.6.53: 27871 [1au] A? search.namequery.com. (49)
14:15:53.477188 IP 90.21.150.38.1024 (…)

Forum Programmation.shell enlever les fins de ligne du résultat de curl

Posté par  . Licence CC By‑SA.
Étiquettes :
1
16
mai
2014

Bonjour.

Je souhaite récupérer le retour d'une API web interne via curl, pour la comparer à un résultat prédéterminé ( en fait, de jouer des tests sans me casser les pieds à devoir me retaper le copier/coller partiel en fonction du serveur ni devoir lire le résultat pour être sûr qu'il est bon ).
Donc, j'ai créé un fichier contenant mes listes de paramètres et un script qui appelle l'URI voulue ( un serveur ou l'autre, principalement ) en ajoutant (…)

Forum Programmation.shell Script de connexion telnet

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
15
mai
2014

Bonjour,

Je veux écrire un script sous une distribution linux (Full Automatic Nagios) pour activer un protocole SNMP dans des routeurs par telnet

Ce script devra parcourir un fichier qui contient les adresse IP et les mot de passe pour telnet,

puis pour chaque ligne du fichier on accède au routeur dont l'adresse IP figure dans cette ligne

enfin activer le protocole SNMP.

Et lancer ce script au démarrage du système.

Merci.

Forum Programmation.shell Équivalent tableau croisé dynamique

Posté par  . Licence CC By‑SA.
Étiquettes :
2
2
mai
2014

Bonjour à tous,

Dans le cadre de l'analyse de log, j'ai un fichier de +850000 lignes avec plusieurs colonnes.

Grosso modo, je l'ai réduit à ceci :

Pierre pierre.monsite.com 45
Paul paul.paulsite.com 10
Jacques jacques.sonsite.com 10
Pierre pierre.monsite.com 10
Jacques jacques.sonsite.com 0
Paul paul.paulsite.com 10
Toto toto.coco.com 1

J'aimerai pouvoir faire un tableau croisé dynamique : donc pouvoir sommer les utilisateurs pour n'avoir plus que
Pierre pierre.monsite.com 50
Paul paul.paulsite.com 20
etc…

Je l'ai fait avec des grep et (…)