[HS] assistance au code (Re: Script BASH gestion des espaces des noms de fichier)
Bonjour, Le 2024-02-05 16:07, Daniel Caillibaud a écrit : Oui, et je vous encourage à passer vos shell bash à shellcheck, il signale ce genre d'erreur (et plein d'autres). Il est parfois un peut trop zélé, mais on peut lui dire qu'on sait ce qu'on fait avec du # shellcheck disable=SC avant la ligne qui le fait râler (où est le code d'erreur qu'il signale) Avec Neovim, on peut avoir ce genre d'assistance en direct :) Sébastien
Re: Script BASH gestion des espaces des noms de fichier
Le 02/02/24 à 08:54, Jérémy Prego a écrit : > Pour éviter ce problème, on peut mettre les variables entre " > > du coup, ça donnerai: > > pdftk "$fichier1" stamp "$tampon" output "$fichier2" Oui, et je vous encourage à passer vos shell bash à shellcheck, il signale ce genre d'erreur (et plein d'autres). Il est parfois un peut trop zélé, mais on peut lui dire qu'on sait ce qu'on fait avec du # shellcheck disable=SC avant la ligne qui le fait râler (où est le code d'erreur qu'il signale) -- Daniel La pensée vole et les mots vont à pied. Voilà tout le drame de l'écrivain. Julien Green
Re: Script BASH gestion des espaces des noms de fichier
Essaie des cotes dans tes attributions de noms. Par exemple : TOTO="${NomFic}" avec NomFic="Mon Fichier" Pareillement cote les appels : Cmd —variable "${NomFic}" Par exemple. Le fait de coter l’appel de variable avec des double cote permet à BASH de considérer NomFic comme un seul paramètre envoyé à Cmd avec ses blancs. Après il faut savoir comment la commande Cmd va traiter tout ça… > Le 2 févr. 2024 à 07:51, Informatique BILLARD > a écrit : > > Bonjour > > j'ai écrit un petit script qui lance à la fin cette commande : > > pdftk $fichier1 stamp $tampon output $fichier2 > > avec $fichier1 et $tampon, $fichier2 sont construit à partir des paramètres > fournis au script . > > Mais je rencontre un problème quand il y a un espace dans le nom de fichier > ou le répertoire pour pdftk ces espaces engendrent une erreur. > > J'ai pourtant placé l'antislah avant mes espace dans l'affectation des > variables. > > tampon=/user/Document/cachet\ pdf > > Merci par avance > > François-Marie > -- Pierre Malard Responsable architectures système CDS DINAMIS/THEIA Montpellier IRD - UMR Espace-Dev - UAR CPST - IR Data-Terra Maison de la Télédétection 500 rue Jean-François Breton 34093 Montpellier Cx 5 France « SPAM : Spieced Pork and Meat » Pierre Dac (Londres, 1944) Extrait de « Pierre DAC parle au Français » sur Radio Londres, le 24 mars 1944, dans Drôle de guerre, éditions Omnibus (2008), pages 93 à 96. (https://www.epi.asso.fr/revue/articles/a1602d.htm) |\ _,,,---,,_ /,`.-'`'-. ;-;;,_ |,4- ) )-,_. ,\ ( `'-' '---''(_/--' `-'\_) πr perl -e '$_=q#: 3|\ 5_,3-3,2_: 3/,`.'"'"'`'"'"' 5-. ;-;;,_: |,A- ) )-,_. ,\ ( `'"'"'-'"'"': '"'"'-3'"'"'2(_/--'"'"' `-'"'"'\_): 24πr::#;y#:#\n#;s#(\D)(\d+)#$1x$2#ge;print' - --> Ce message n’engage que son auteur <-- signature.asc Description: Message signed with OpenPGP
Re: Script BASH gestion des espaces des noms de fichier
Effectivement François Merci d'avoir rectifié. Erwann Le 02/02/2024 à 13:09, François TOURDE a écrit : Le 19755ième jour après Epoch, Erwann Le Bras écrivait: Éviter les boucles "for" avec listes de fichiers (for f in `ls "$dir"`) ou (for f in *), les espaces sont mal interprétés. Ça marche très bien l'utilisation avec for f in *, si tu prends soin d'utiliser "$f" plutôt que juste $f Par contre, le "in `ls *`" n'est effectivement pas une bonne idée.
Re: Script BASH gestion des espaces des noms de fichier
Le 19755ième jour après Epoch, Erwann Le Bras écrivait: > Éviter les boucles "for" avec listes de fichiers (for f in `ls > "$dir"`) ou (for f in *), les espaces sont mal interprétés. Ça marche très bien l'utilisation avec for f in *, si tu prends soin d'utiliser "$f" plutôt que juste $f Par contre, le "in `ls *`" n'est effectivement pas une bonne idée.
Re: Script BASH gestion des espaces des noms de fichier
bonjour comme dis par ailleurs, pas de problème avec les espaces si les variables et chemins sont bien protégés avec des doubles-cotes (["]) fichier="mon fichier" dir="$HOME/mon répertoire" cp "$fichier" "$dir" Éviter les boucles "for" avec listes de fichiers (for f in `ls "$dir"`) ou (for f in *), les espaces sont mal interprétés. À la place utiliser "find" : find "$dir" -name "${fichier}*" -exec c'est à peu près tout. Erwann Le 02/02/2024 à 08:41, Informatique BILLARD a écrit : Bonjour j'ai écrit un petit script qui lance à la fin cette commande : pdftk $fichier1 stamp $tampon output $fichier2 avec $fichier1 et $tampon, $fichier2 sont construit à partir des paramètres fournis au script . Mais je rencontre un problème quand il y a un espace dans le nom de fichier ou le répertoire pour pdftk ces espaces engendrent une erreur. J'ai pourtant placé l’antislash avant mes espace dans l'affectation des variables. tampon=/user/Document/cachet*\ *pdf Merci par avance François-Marie
Re: Script BASH gestion des espaces des noms de fichier
merci je ne connaissais pas cet outils François-Marie Le 02/02/2024 à 09:54, Klaus Becker a écrit : Detox est ton ami Klaus
Re: Script BASH gestion des espaces des noms de fichier
Bon j'ai tourné le problème dans tous les sens et finalement j'ai opté pour ceci 1. le nom du fichier passé comme argument au script est traité pour remplacer les espaces par des underscore. 2. je fait un renommage de ce fichier avec le nom sans espaces. 3. Puis traitement et tout fonctionne. Merci à vous. François-Marie Le 02/02/2024 à 08:57, Cyrille a écrit : Bjr, tampon=/user/Document/cachet\ pdf et tampon="/user/Document/cachet\ pdf" (utiliser des double quote ?? ++
Re: Script BASH gestion des espaces des noms de fichier
Detox est ton ami Klaus
Re: Script BASH gestion des espaces des noms de fichier
Le 02/02/2024 à 08:48, Basile Starynkevitch a écrit : On 2/2/24 08:41, Informatique BILLARD wrote: Bonjour j'ai écrit un petit script qui lance à la fin cette commande : pdftk $fichier1 stamp $tampon output $fichier2 avec $fichier1 et $tampon, $fichier2 sont construit à partir des paramètres fournis au script . Mais je rencontre un problème quand il y a un espace dans le nom de fichier ou le répertoire pour pdftk ces espaces engendrent une erreur. J'ai pourtant placé l’antislash avant mes espace dans l'affectation des variables. tampon=/user/Document/cachet*\ *pdf Une solution simple c'est de s'interdire les espaces dans les noms de fichiers. Pourquoi ne pas coder par exemple Oui en effet j'ai fini par supprimer les espaces dans les noms de fichiers et répertoires. Cependant ce script traite des fichiers ayant parfois des espaces et si je dois renommer à chaque fois je vais perdre l'intérêt du script. tampon=/user/Document/cachet.pdf et ensuite lancer votre script avec /bin/bash -vx lescriptbash Merci par avance François-Marie
Script BASH gestion des espaces des noms de fichier
Bonjour j'ai écrit un petit script qui lance à la fin cette commande : pdftk $fichier1 stamp $tampon output $fichier2 avec $fichier1 et $tampon, $fichier2 sont construit à partir des paramètres fournis au script . Mais je rencontre un problème quand il y a un espace dans le nom de fichier ou le répertoire pour pdftk ces espaces engendrent une erreur. J'ai pourtant placé l'antislah avant mes espace dans l'affectation des variables. tampon=/user/Document/cachet*\ *pdf Merci par avance François-Marie
Re: Script BASH gestion des espaces des noms de fichier
Bjr, > tampon=/user/Document/cachet\ pdf et tampon="/user/Document/cachet\ pdf" (utiliser des double quote ?? ++
Re: Script BASH gestion des espaces des noms de fichier
bonjour, Le 02/02/2024 à 08:41, Informatique BILLARD a écrit : Bonjour j'ai écrit un petit script qui lance à la fin cette commande : pdftk $fichier1 stamp $tampon output $fichier2 Pour éviter ce problème, on peut mettre les variables entre " du coup, ça donnerai: pdftk "$fichier1" stamp "$tampon" output "$fichier2" avec $fichier1 et $tampon, $fichier2 sont construit à partir des paramètres fournis au script . Mais je rencontre un problème quand il y a un espace dans le nom de fichier ou le répertoire pour pdftk ces espaces engendrent une erreur. J'ai pourtant placé l’antislash avant mes espace dans l'affectation des variables. tampon=/user/Document/cachet*\ *pdf Merci par avance François-Marie Jerem
Re: Script BASH gestion des espaces des noms de fichier
On 2/2/24 08:41, Informatique BILLARD wrote: Bonjour j'ai écrit un petit script qui lance à la fin cette commande : pdftk $fichier1 stamp $tampon output $fichier2 avec $fichier1 et $tampon, $fichier2 sont construit à partir des paramètres fournis au script . Mais je rencontre un problème quand il y a un espace dans le nom de fichier ou le répertoire pour pdftk ces espaces engendrent une erreur. J'ai pourtant placé l’antislash avant mes espace dans l'affectation des variables. tampon=/user/Document/cachet*\ *pdf Une solution simple c'est de s'interdire les espaces dans les noms de fichiers. Pourquoi ne pas coder par exemple tampon=/user/Document/cachet.pdf et ensuite lancer votre script avec /bin/bash -vx lescriptbash Merci par avance François-Marie -- Basile Starynkevitch (only mine opinions / les opinions sont miennes uniquement) 92340 Bourg-la-Reine, France web page: starynkevitch.net/Basile/ See/voir: https://github.com/RefPerSys/RefPerSys
Script BASH gestion des espaces des noms de fichier
Bonjour j'ai écrit un petit script qui lance à la fin cette commande : pdftk $fichier1 stamp $tampon output $fichier2 avec $fichier1 et $tampon, $fichier2 sont construit à partir des paramètres fournis au script . Mais je rencontre un problème quand il y a un espace dans le nom de fichier ou le répertoire pour pdftk ces espaces engendrent une erreur. J'ai pourtant placé l’antislash avant mes espace dans l'affectation des variables. tampon=/user/Document/cachet*\ *pdf Merci par avance François-Marie
Re: script bash pour unbound
- Mail original - > De: "Daniel Caillibaud" > À: debian-user-french@lists.debian.org > Envoyé: Mardi 21 Août 2018 19:21:06 > Objet: Re: script bash pour unbound > > Le 18/08/18 à 21:48, Bernard Schoenacker > a > écrit : > > > bonjour, > > > > j'ai pris ce script bash et je n'arrive pas à le déverminer: > > > > https://blog.mirabellette.eu/index.php?article17/block-advertise-domain-name-with-unbound > > > > voici le début qui pose problème : > > > > ARRAY= > > $(https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts > > ) > > sur la page mentionnée y'a pas de $ > > > for i in "${ARRAY[@]}" > > et du coup je comprend pas la ligne précédente, pourquoi un for sur > un > tableau d'un seul élément ? > > Pas testé, mais amha, virer do/done et remplacer le wget par > > > do > > wget -c -O w "$i" > > wget -c -O w > https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts > > > > > > grep -v " > > #\|\|\|\|\|\|href\|title=\|=\|<" w > > > adsList.txt rm -f w > > dos2unix adsList.txt > > > ça peut se faire sans fichier intermediaire avec > > wget -c -O - $url|grep -v "expression" > fichier > > donc ici tu peux te contenter de ces 3 lignes, en remplaçant la 3e > par /etc/init, service ou systemctl suivant ta conf > (et mettre le path complet de adsList.txt pour pouvoir lancer le > script de > n'importe où) : > > url=https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts > wget -q -O - $url|sed -e '/^$/d; /#/d' > adsList.txt > # reste à relancer unbound qui lit ce adsList.txt > > > mais je crois qu'unbound ignore les lignes vides et celles qui > commencent > par #, ton script devrai#!/bin/bash # # set chmod +x # exec sh echo Someonewhocares Go === wget -vnc -O - 'https://someonewhocares.org/hosts/zero/' |unhtml | grep '^0\.0\.0\.0' | awk '/0.0.0.0/ {print $2}'| iconv -f iso8859-15 -t utf8 >>w echo convert file to utf8 echo Someonewhocares done == echo Githubusercontent notracking Go === wget -vnc -O - 'https://raw.githubusercontent.com/notracking/hosts-blocklists/master/hostnames.txt'| grep '^0\.0\.0\.0' | awk '/0.0.0.0/ {print $2}'| iconv -f iso8859-15 -t utf8 >>w echo convert file to utf8 echo Githubusercontent notracking done === echo winhelp2002 Go === wget -vnc -O - 'http://winhelp2002.mvps.org/hosts.txt' |awk '/0.0.0.0/ {print $2}'| iconv -f iso8859-15 -t utf8 >>w echo convert file to utf8 echo winhelp2002 done === echo Githubusercontent StevenBlack Go === wget -vnc -O - 'https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts' |awk '/0.0.0.0/ {print $2}'| iconv -f iso8859-15 -t utf8 >>w echo convert file to utf8 echo Githubusercontent StevenBlack done === echo Adaway Go === wget -vnc -O - 'https://adaway.org/hosts.txt' | awk '/127.0.0.1/ {print $2}'| iconv -f iso8859-15 -t utf8 >>w echo convert file to utf8 echo Adaway done === echo Pgl Yoyo Go === wget -vnc -O- --header\="Accept-Encoding: gzip" 'http://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts=plaintext' | gunzip | awk '/127.0.0.1/ {print $2}'| iconv -f iso8859-15 -t utf8 >>w echo convert file to utf8 echo Pgl Yoyo done === echo Hosts File Go === wget -qnc -O - 'https://hosts-file.net/ad_servers.txt' | awk '/127.0.0.1/ {print $2}' | iconv -f iso8859-15 -t utf8 >>w echo convert file to utf8 echo Hosts File done === echo dsfc Go === wget -qnc -O - 'https://www.dsfc.net/infrastructure/dns-infrastructure/unbound-redirecteur-cache-blacklist-dns/'|unhtml| tr -d '\'| tr -d '"' | awk '/local-zone/ {print $2}'| iconv -f iso8859-15 -t utf8 >>w echo convert file to utf8 echo dsfc done === echo remove tabulation character and carriage return sed -i 's/\x0D$//' w echo remove comments sed -i 's/#//g' w echo remove useless space sed -i 's/ /
Re: script bash pour unbound
Le 18/08/18 à 21:48, Bernard Schoenacker a écrit : > bonjour, > > j'ai pris ce script bash et je n'arrive pas à le déverminer: > > https://blog.mirabellette.eu/index.php?article17/block-advertise-domain-name-with-unbound > > voici le début qui pose problème : > > ARRAY= > $(https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts > ) sur la page mentionnée y'a pas de $ > for i in "${ARRAY[@]}" et du coup je comprend pas la ligne précédente, pourquoi un for sur un tableau d'un seul élément ? Pas testé, mais amha, virer do/done et remplacer le wget par > do > wget -c -O w "$i" wget -c -O w https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts > > grep -v " #\|\|\|\|\|\|href\|title=\|=\|<" w > > adsList.txt rm -f w > dos2unix adsList.txt ça peut se faire sans fichier intermediaire avec wget -c -O - $url|grep -v "expression" > fichier donc ici tu peux te contenter de ces 3 lignes, en remplaçant la 3e par /etc/init, service ou systemctl suivant ta conf (et mettre le path complet de adsList.txt pour pouvoir lancer le script de n'importe où) : url=https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts wget -q -O - $url|sed -e '/^$/d; /#/d' > adsList.txt # reste à relancer unbound qui lit ce adsList.txt mais je crois qu'unbound ignore les lignes vides et celles qui commencent par #, ton script devrait pouvoir se résumer à url=https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts wget -q -O /path/to/adsList.tmp $url \ && [ -s /path/to/adsList.tmp ] \ && mv /path/to/adsList.tmp /path/to/adsList.txt \ && systemctl reload unbound \ && echo "Liste actualisée et rechargée" \ || echo "Un truc a foiré">&2 (l'enchaînement avec && est là au cas où le wget plante, pour ne pas risquer d'écraser l'ancien txt avec un truc vide, le test -s passe si le fichier n'est pas vide) Une remarque au passage, je ne laisserais pas qqun d'externe définir l'ip de localhost, ça me parait plus prudent d'ajouter un sed pour virer les premières lignes, ou ne garder que celles qui commencent par 0.0.0.0, en ajoutant si besoin un autre fichier txt pour unbound pour ces lignes (mais je crois qu'unbound résoud déjà localhost avec sa conf par défaut). wget -q -O - $url|sed -ne '/^0\.0\.0\.0/ p' > /path/to/adsList.tmp Celui qui fournit la liste pourra toujours rediriger localhost vers 0.0.0.0 mais au moins ça n'ira pas ailleurs et je vais m'en apercevoir rapidement. > > > merci pour le coup de puce > > slt > bernard > -- Daniel Travailler dur n'a jamais tué personne, mais pourquoi prendre le risque ? Edgar Bergen
Re: script bash pour unbound
Bonjour, J'utilise actuellement un script un peu différent avec Unbound, pour une finalité anti-pubs équivalente avec une autre source, je pense cependant qu'il est possible de remanier la commande afin d'utiliser ta source si tu préfères... En espérant que ca fonctionne toujours sur la version Unbound distribuée sur une Stretch, car actuellement sur une Raspbian 8 Jessie. réf: https://mh8.mooo.com/www/leminos/wiki/unbound-serveur-dns-a-la-maison-requetes-aux-dns-racines Le 18/08/2018 à 21:48, Bernard Schoenacker a écrit : > bonjour, > > j'ai pris ce script bash et je n'arrive pas à le déverminer: > > https://blog.mirabellette.eu/index.php?article17/block-advertise-domain-name-with-unbound > > voici le début qui pose problème : > > ARRAY= > $(https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts > ) > > for i in "${ARRAY[@]}" > do > wget -c -O w "$i" > > grep -v " #\|\|\|\|\|\|href\|title=\|=\|<" w > > adsList.txt > rm -f w > dos2unix adsList.txt > > > merci pour le coup de puce > > slt > bernard > signature.asc Description: OpenPGP digital signature
script bash pour unbound
bonjour, j'ai pris ce script bash et je n'arrive pas à le déverminer: https://blog.mirabellette.eu/index.php?article17/block-advertise-domain-name-with-unbound voici le début qui pose problème : ARRAY= $(https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts ) for i in "${ARRAY[@]}" do wget -c -O w "$i" grep -v " #\|\|\|\|\|\|href\|title=\|=\|<" w > adsList.txt rm -f w dos2unix adsList.txt merci pour le coup de puce slt bernard
Re: hs: petite question script bash
Le 21/03/18 à 20:40, raphael.poite...@gmail.com (Raphaël POITEVIN) a écrit : RP> Pour moi c’est propre ! J'ajouterais quand même un # devrait se trouver au début de tout script bash, pour planter si on # utilise une variable non déclarée set -u et du coup plus loin, un ${1-} pour initialiser la variable "1" à "" si elle n'existe pas (${foo-bar} vaut $foo si la variable existe, indépendamment de sa valeur, et "bar" sinon) case ${1-} foo) # du code pour $1 == "foo" ;; bar|"bla bla") # du code pour $1 == "bar" ou $1 == "bla bla" ;; *) # du code pour tous les autres cas ;; esac -- Daniel S'il est impossible de ne pas penser à quelque chose, il reste encore possible de penser à autre chose. Lewis Carroll
Re: hs: petite question script bash
Jérémy PREGOwrites: > merci pour ça, mais du coup dans le *, je vais devoir mettre mes trois > fonction l'une après l'autre, pour qu'elles soient exécutés, si je > n'entre aucun paramètre. > > si c'est un moyen propre, je vais l'adopter :) Pour moi c’est propre ! -- Raphaël
Re: hs: petite question script bash
Le 21/03/2018 à 16:22, Jérémy PREGO a écrit : > Le 21/03/2018 à 15:52, yahoo a écrit : >> >> Bonjour >> >> en bash tu peux utiliser case. >> >> /case $1 in >> / >> >> / "")/ >> >> / ton code/ >> >> / ;;/ >> >> / "")/ >> >> / ton code// >> / >> >> / ;;/ >> >> / *)/ >> >> / si aucune option ou rien qui ne corresponde au choix ci-dessus// >> / >> >> / ;;/ >> >> /esac/ >> >> > merci pour ça, mais du coup dans le *, je vais devoir mettre mes trois > fonction l'une après l'autre, pour qu'elles soient exécutés, si je > n'entre aucun paramètre. > > si c'est un moyen propre, je vais l'adopter :) > > jerem >> Le 21/03/2018 à 15:40, Jérémy PREGO a écrit : >>> bonjour, >>> >>> est-ce qu'il exite un moyen simple en bash d'exécuter une partie >>> d'un script en fonction du paramètre $1 et si il y a pas de >>> paramètre, exécuter tout le script ? >>> >>> j'ai bien pensé faire des fonctions et faire une condition genre: >>> if [ $1 == "contenue de $1" ]; then >>> fonction1 >>> fi >>> >>> je suis convaincu qu'il y a plus propre que ça, avec un système que >>> je ne connais pas encore. >>> >>> merci pour l'aide apportée >>> >>> jerem >>> >> > Je ne sais pas si c'est le moyen le plus propre :) mais j'ai toujours vue cette solution pour les scripts d'init par exemple, dans les script l'option restart contient souvent l'appel de la fonction do_stop suivi de do_start, donc tu peux mettre autant de fonctions que tu veux pour chaque cas de case.
Re: hs: petite question script bash
Le 21/03/2018 à 15:52, yahoo a écrit : Bonjour en bash tu peux utiliser case. /case $1 in / / "")/ / ton code/ / ;;/ / "")/ / ton code// / / ;;/ / *)/ / si aucune option ou rien qui ne corresponde au choix ci-dessus// / / ;;/ /esac/ merci pour ça, mais du coup dans le *, je vais devoir mettre mes trois fonction l'une après l'autre, pour qu'elles soient exécutés, si je n'entre aucun paramètre. si c'est un moyen propre, je vais l'adopter :) jerem Le 21/03/2018 à 15:40, Jérémy PREGO a écrit : bonjour, est-ce qu'il exite un moyen simple en bash d'exécuter une partie d'un script en fonction du paramètre $1 et si il y a pas de paramètre, exécuter tout le script ? j'ai bien pensé faire des fonctions et faire une condition genre: if [ $1 == "contenue de $1" ]; then fonction1 fi je suis convaincu qu'il y a plus propre que ça, avec un système que je ne connais pas encore. merci pour l'aide apportée jerem
Re: hs: petite question script bash
Bonjour en bash tu peux utiliser case. /case $1 in / / "")/ / ton code/ / ;;/ / "")/ / ton code// / / ;;/ / *)/ / si aucune option ou rien qui ne corresponde au choix ci-dessus// / / ;;/ /esac/ C'est la solution utilisé dans les script sysvinit, souvent dans la partie *) on met un affichage sur la sortie standard pour afficher l'usage de la commande, mais tu peux mettre ce que tu veux. Le 21/03/2018 à 15:40, Jérémy PREGO a écrit : > bonjour, > > est-ce qu'il exite un moyen simple en bash d'exécuter une partie d'un > script en fonction du paramètre $1 et si il y a pas de paramètre, > exécuter tout le script ? > > j'ai bien pensé faire des fonctions et faire une condition genre: > if [ $1 == "contenue de $1" ]; then > fonction1 > fi > > je suis convaincu qu'il y a plus propre que ça, avec un système que je > ne connais pas encore. > > merci pour l'aide apportée > > jerem >
hs: petite question script bash
bonjour, est-ce qu'il exite un moyen simple en bash d'exécuter une partie d'un script en fonction du paramètre $1 et si il y a pas de paramètre, exécuter tout le script ? j'ai bien pensé faire des fonctions et faire une condition genre: if [ $1 == "contenue de $1" ]; then fonction1 fi je suis convaincu qu'il y a plus propre que ça, avec un système que je ne connais pas encore. merci pour l'aide apportée jerem
Re: Script Bash de conversion ISO8859 -> UTF8
Le Sat, 18 Feb 2017 17:32:50 +0100, "JF Straeten"a écrit : > On Sat, Feb 18, 2017 at 04:56:41PM +0100, Nicolas FRANCOIS wrote: > > [...] > > Merci les gars, ceci fonctionne comme je le veux : > > > > for filename in ` find . -type f -name "*.$1"` > > > Si le script s'exécute sous bash, tu devrais même éviter les backticks > et recourir à la syntaxe $() qui fait la même chose en plus lisible et > moins chiant quand il y a d'autres quotes : > > for filename in $(find . -type f -name "*.$1") +1 d'autant que c'est la syntaxe préconisée, la syntaxe avec `` étant considérée comme obsolète il me semble.
Re: Script Bash de conversion ISO8859 -> UTF8
LO, On Sat, Feb 18, 2017 at 04:56:41PM +0100, Nicolas FRANCOIS wrote: [...] > Merci les gars, ceci fonctionne comme je le veux : > > for filename in ` find . -type f -name "*.$1"` Si le script s'exécute sous bash, tu devrais même éviter les backticks et recourir à la syntaxe $() qui fait la même chose en plus lisible et moins chiant quand il y a d'autres quotes : for filename in $(find . -type f -name "*.$1") Hih, -- JFS.
Re: Script Bash de conversion ISO8859 -> UTF8
On Sat, Feb 18, 2017 4:33 PM, Nicolas FRANCOIS nicolas.franc...@free.fr wrote: Salut. [ … ] find: les chemins doivent précéder l'expression : arithmetique.tex J'obtiens : for filename in ` find . -type f -name *.tex` Même en essayant simplement de convertir les fichiers tex : Find ne s'utilise pas comme cela, mais plutôt find . -type f -name "*.tex" -exec iconv {} … \; Attention le "\;" en fin de -exec est obligatoire ! Hope this help - (V) Dhénin Jean-Jacques ( ..) 48, rue de la Justice 78300 Poissy c(')(')dhe...@gmail.com -
Re: Script Bash de conversion ISO8859 -> UTF8
Le Sat, 18 Feb 2017 16:33:49 +0100, Nicolas FRANCOISa écrit : Merci les gars, ceci fonctionne comme je le veux : for filename in ` find . -type f -name "*.$1"` Merci à tous deux, avec un petit bonus à Jean-Jacques qui a été plus rapide ;-) (mais Pascal a apporté une variante à la réponse, donc loué soit-il, lui aussi !). \bye -- Nicolas FRANCOIS | /\ http://nicolas.francois.free.fr | |__| X--/\\ We are the Micro$oft. _\_V Resistance is futile. You will be assimilated. darthvader penguin pgp2GfAuDhb8B.pgp Description: OpenPGP digital signature
Re: Script Bash de conversion ISO8859 -> UTF8
Le samedi 18 février 2017 à 16:33 +0100, Nicolas FRANCOIS a écrit : > Même en essayant simplement de convertir les fichiers tex : > > for filename in ` find . -type f -name *.tex` Tu dois mettre entre quote le pattern: for filename in ` find . -type f -name '*.tex'` -- Pascal Obry / Magny Les Hameaux (78) The best way to travel is by means of imagination http://www.obry.net gpg --keyserver keys.gnupg.net --recv-key F949BD3B signature.asc Description: This is a digitally signed message part
Script Bash de conversion ISO8859 -> UTF8
Salut. Je voudrais convertir tout mon travail sur des bouquins en LaTeX de ISO8859-1 (c'est un vieux travail !) vers UTF-8. J'ai trouvé un script que j'ai essayé d'adapter : # start encoding encodeFrom='ISO-8859-1' # target encoding encodeTo='UTF-8' # finding files whose extensions correspond to the given parameter for filename in ` find . -type f -name *.{$1}` do echo $filename # saving source file mv $filename $filename.save # convert file iconv -f $encodeFrom -t $encodeTo $filename.save -o $filename # check that file is in unix mode dos2unix $filename done Le problème : la commande 'find' ne fonctionne pas. En la testant avec "set -v", j'obtiens : find . -type f -name *.{$1} J'ai fait quoi comme bêtises ? J'ai essayé avec un bouquin sur Bash (en fait, deux), mais je n'ai pas bien compris ce que je faisais de mal :-P Même en essayant simplement de convertir les fichiers tex : for filename in ` find . -type f -name *.tex` J'obtiens : find: les chemins doivent précéder l'expression : arithmetique.tex Toute aide sera grandement appréciée :-) \bye -- Nicolas FRANCOIS | /\ http://nicolas.francois.free.fr | |__| X--/\\ We are the Micro$oft. _\_V Resistance is futile. You will be assimilated. darthvader penguin pgpnUTE95NMYp.pgp Description: OpenPGP digital signature
script bash et retour commande dhclient
bonjour, sous une debian jessie, je n'arrive pas a trouver le moyen de savoir si un dhclient c'est bien ou mal fini. en effet, le code de retour de la commande dhclient $interface reste a 0 et l'ancienne adresse ip reste afficher dans ifconfig. comment savoir si un dhclient c'est bien ou mal exécuté dans un script ? (sous entendu si il a eu une adresse ip ou non). merci d'avance, jerem -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: https://lists.debian.org/55262fc4.1060...@prego-network.net
Re: script bash et retour commande dhclient
Bonjour, Peut être regarder du côté des logs (syslog). Sinon dhclient possède un mode verbeux (-v). Le 09/04/2015 09:52, Prego Jérémy a écrit : bonjour, sous une debian jessie, je n'arrive pas a trouver le moyen de savoir si un dhclient c'est bien ou mal fini. en effet, le code de retour de la commande dhclient $interface reste a 0 et l'ancienne adresse ip reste afficher dans ifconfig. comment savoir si un dhclient c'est bien ou mal exécuté dans un script ? (sous entendu si il a eu une adresse ip ou non). merci d'avance, jerem -- Guillaume -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: https://lists.debian.org/552642f8.6080...@gwilhom.fr
Re: script bash et retour commande dhclient
bonjour, j'ai bien pensé a cette solution, mais pour un script, c'est pas très optimal et voulant l'éviter, je venais voir si il y avai pas un remède miracle... jerem Le 09/04/2015 11:14, Guillaume a écrit : Bonjour, Peut être regarder du côté des logs (syslog). Sinon dhclient possède un mode verbeux (-v). Le 09/04/2015 09:52, Prego Jérémy a écrit : bonjour, sous une debian jessie, je n'arrive pas a trouver le moyen de savoir si un dhclient c'est bien ou mal fini. en effet, le code de retour de la commande dhclient $interface reste a 0 et l'ancienne adresse ip reste afficher dans ifconfig. comment savoir si un dhclient c'est bien ou mal exécuté dans un script ? (sous entendu si il a eu une adresse ip ou non). merci d'avance, jerem -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: https://lists.debian.org/55264a4e.4010...@prego-network.net
Re: script bash et retour commande dhclient
Re-bonjour, Vous pouvez normalement rediriger la sortie de dhclient soit vers syslog soit vers un simple fichier texte. Le 09/04/2015 11:45, Prego Jérémy a écrit : bonjour, j'ai bien pensé a cette solution, mais pour un script, c'est pas très optimal et voulant l'éviter, je venais voir si il y avai pas un remède miracle... jerem Le 09/04/2015 11:14, Guillaume a écrit : Bonjour, Peut être regarder du côté des logs (syslog). Sinon dhclient possède un mode verbeux (-v). Le 09/04/2015 09:52, Prego Jérémy a écrit : bonjour, sous une debian jessie, je n'arrive pas a trouver le moyen de savoir si un dhclient c'est bien ou mal fini. en effet, le code de retour de la commande dhclient $interface reste a 0 et l'ancienne adresse ip reste afficher dans ifconfig. comment savoir si un dhclient c'est bien ou mal exécuté dans un script ? (sous entendu si il a eu une adresse ip ou non). merci d'avance, jerem -- Guillaume -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: https://lists.debian.org/55265539.1050...@gwilhom.fr
Re: Script Bash pour convertir BD Access vers MySQL ?
J'ai probablement une piste :) → http://nialldonegan.me/2007/03/10/converting-microsoft-access-mdb-into-csv-or-mysql-in-linux/ Il est bien question de mdbtools et cet utilitaire est super :) Seul problème que je dois encore résoudre : les commentaire sur des colonnes... mdbtool génère une manière de les définir que mysql ne comprend pas... même en précisant bien la cible, mysql dans la commande... Sinon, juste pour préciser que la bd au départ est vraiment pourrie... réalisée par un ... windowsien(?)... les noms de tables et colonne comprennent des espaces, des / des ° des accents, des ç etc. J'ai jamais vu ça... :) Le but est ici de ne pas trop me prendre la tête... Une autre bd sera mise au point dans un deuxième temps... À partir d'un bd dans mysql, on peut plus facilement migrer vers une autre, toujours dans mysql... Et en attendant, nous allons pouvoir rapidement proposer une interface web et nous débarrasser de l'usage d'Access... Je vous tient au courant ;) À+, Serge S. -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/cafeepgamk2hrk0rdnsfzhlpp0epnskhv2bor7tabzsg62fn...@mail.gmail.com
Script Bash pour convertir BD Access vers MySQL ?
Salut à tous, Je viens de passer une petite demi-heure sur le Google... mais déjà, je trouve pas les bons mots clés à taper... En gros, j'ai l'impression que c'est pas évident à trouver comme ça... :( Donc excusez-moi si je viens poser ici une question peut-être toute bête. J'aimerais me débarrasser de l'usage d'Access de Microsoft et le remplacer par l'usage d'une application web php/mysql. Le fichier Access se trouve sur un serveur Debian Squeeze sur lequel est également installé MySQL, PHP et Apache... ce fichier Access est partagé via Samba et utilisé à partir d'un poste Windows 7/MS Office 2010. Pour le développement de l'application web (PHP) et la transition, j'aimerais avoir un script bash à exécuter pour (re-)faire une BD MySQL à partir du fichier Access. Existe-t-il un tel outil ? J'imagine qu'il est possible d'exporter la bd à partir d'Access, en un code SQL (moche ?) ; code qu'il serait possible de bidouiller pour l'exécuter ensuite par MySQL... Mais ce serait de nombreuses manipulations manuelles ; et je préférerais un petit script facile à exécuter et qui ferait tout ce qui faut automatiquement... Merci d'avance pour votre aide... Je continue également à chercher via Google... À+, Serge S. -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/CAFeEpGCbZxtBErmSGCT3sK2Hz=+b+prg7v1dvvavitbmvyj...@mail.gmail.com
Re: Script Bash pour convertir BD Access vers MySQL ?
J'ai probablement une piste :) → http://nialldonegan.me/2007/03/10/converting-microsoft-access-mdb-into-csv-or-mysql-in-linux/ -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/CAFeEpGDM-hnEyoYXoz�mfeznbvm0nqtr5tp94_kofp5rm...@mail.gmail.com
Re: Script Bash pour convertir BD Access vers MySQL ?
Le Fri, 19 Jul 2013 12:18:57 +0200, Serge SMEESTERS sergesmeest...@gmail.com a écrit : J'imagine qu'il est possible d'exporter la bd à partir d'Access, en un code SQL (moche ?) ; code qu'il serait possible de bidouiller pour l'exécuter ensuite par MySQL... Mais ce serait de nombreuses manipulations manuelles ; et je préférerais un petit script facile à exécuter et qui ferait tout ce qui faut automatiquement... Je suis dans la même démarche mais vers Postgres. J'ai probablement une piste :) → http://nialldonegan.me/2007/03/10/converting-microsoft-access-mdb-into-csv-or-mysql-in-linux/ Mon expérience : les formats des champs Access ne sont pas forcément identiques à ceux de Postgres. Donc il me faut tous les reformater à la main pour les mettre au format Postgres. S'il existe un script qui sait deviner comment transformer les formats de la source vers le format de la cible alors je suis preneur aussi! -- Alain Vaugham Clef GPG : 0xD26D18BC -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20130719124131.7b1fd320@mach07.localdomain
Re: Script Bash pour convertir BD Access vers MySQL ?
Le vendredi 19 juillet 2013 à 12:41, Alain Vaugham a écrit : J'ai probablement une piste :) → http://nialldonegan.me/2007/03/10/converting-microsoft-access-mdb-into-csv-or-mysql-in-linux/ Mon expérience : les formats des champs Access ne sont pas forcément identiques à ceux de Postgres. Donc il me faut tous les reformater à la main pour les mettre au format Postgres. S'il existe un script qui sait deviner comment transformer les formats de la source vers le format de la cible alors je suis preneur aussi! Qu'entends-tu par « les formats des champs Access ne sont pas forcément identiques à ceux de Postgres » ? Tu pourrais donner un exemple ? S'il s'agit simplement de traduire des termes dans un fichier texte (export SQL), sed et awk le feront très bien. Seb -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20130719112506.gc14...@sebian.nob900.homeip.net
Re: Script Bash pour convertir BD Access vers MySQL ?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 2013-07-19 06:18, Serge SMEESTERS wrote: Je continue également à chercher via Google migrating access database to mysql J'utilise https://www.ixquick.com/ pour mes recherches: https://fr.wikipedia.org/wiki/Ixquick A+ F. - -- Fabián Rodríguez http://debian.magicfab.ca -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.12 (GNU/Linux) Comment: PGP/Mime available upon request Comment: Using GnuPG with Icedove - http://www.enigmail.net/ iEYEARECAAYFAlHpKUMACgkQfUcTXFrypNV0YQCgzxQlptUjQFvg0MTAhDV13+GS +3AAnihJhM5EHyvjoV2z/2Ym6Fpmbx5s =r/3u -END PGP SIGNATURE- -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/51e92943.8030...@member.fsf.org
Re: Script Bash pour convertir BD Access vers MySQL ?
Bonjour, Le 19/07/2013 13:55, Fabian Rodriguez a écrit : -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 2013-07-19 06:18, Serge SMEESTERS wrote: Je continue également à chercher via Google migrating access database to mysql J'utilise https://www.ixquick.com/ pour mes recherches: https://fr.wikipedia.org/wiki/Ixquick Est-ce que l'utilisation des mdbtools (présents dans Debian) ne ferait pas l'affaire ? Il y a un utilitaire, mdb-schema, qui permet l'export de DDL dans le dialecte SQL désiré (access, mysql, postgresql, oracle, …) et mdb-export devrait savoir faire de même pour les données. A+ Jean-Jacques -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/51e92ae0.1010...@doti.fr
Re: Script Bash pour convertir BD Access vers MySQL ?
Le Fri, 19 Jul 2013 13:25:06 +0200, Sébastien NOBILI sebnewslet...@free.fr a écrit : Le vendredi 19 juillet 2013 à 12:41, Alain Vaugham a écrit : J'ai probablement une piste :) → http://nialldonegan.me/2007/03/10/converting-microsoft-access-mdb-into-csv-or-mysql-in-linux/ Mon expérience : les formats des champs Access ne sont pas forcément identiques à ceux de Postgres. Donc il me faut tous les reformater à la main pour les mettre au format Postgres. S'il existe un script qui sait deviner comment transformer les formats de la source vers le format de la cible alors je suis preneur aussi! Qu'entends-tu par « les formats des champs Access ne sont pas forcément identiques à ceux de Postgres » ? Tu pourrais donner un exemple ? Super : c'est vendredi! Cependant, je ne voudrai pas voler le post initial... Voici l'exemple pour lequel je n'ai pas encore trouvé de solution rapide et simple : Access dispose d'un champ de type NuméroAuto qui accepte par défaut un entier long, soit incrémental, soit aléatoire. L'intérêt de ce type de champ c'est que si une ligne de la table est détruite, le contenu de ce champ est brûlé. Il n'est donc plus possible de le réutiliser dans une nouvelle ligne. C'est l'usage type d'une traçabilité de numéros de série. Un numéro de série est sensé être unique. Si un produit est détruit, son numéro de série ne doit plus être réutilisatable. Bon, d'accord on pourrait trouver une autre solution que l'usage du NuméroAuto en ajoutant une colonne pour indiquer l'état du numéro de série... mais dans mon cas, je me contente de détruire la ligne du numéro de série dont le produit a été mis au rebus. Extraire toutes les lignes de ce champ pour les mettre dans un fichier csv et les importer dans Postgres ne pose aucun problème. Là n'est pas la question. Par contre je n'ai pas trouvé dans Postgres l'équivalent d'un format de champ qui corresponde au format NuméroAuto d'Access. Dans Postgres, le format serial UNIQUE NOT NULL ne tient pas compte des numéro brûlés. Donc pour migrer une telle colonne je n'ai pas de solution qui soit automatique. -- Alain Vaugham Clef GPG : 0xD26D18BC -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20130719141147.78b54871@mach07.localdomain
Re: Script Bash pour convertir BD Access vers MySQL ?
On Fri, Jul 19, 2013 at 02:11:47PM CEST, Alain Vaugham al...@vaugham.com said: Le Fri, 19 Jul 2013 13:25:06 +0200, Sébastien NOBILI sebnewslet...@free.fr a écrit : Le vendredi 19 juillet 2013 à 12:41, Alain Vaugham a écrit : J'ai probablement une piste :) → http://nialldonegan.me/2007/03/10/converting-microsoft-access-mdb-into-csv-or-mysql-in-linux/ Mon expérience : les formats des champs Access ne sont pas forcément identiques à ceux de Postgres. Donc il me faut tous les reformater à la main pour les mettre au format Postgres. S'il existe un script qui sait deviner comment transformer les formats de la source vers le format de la cible alors je suis preneur aussi! Qu'entends-tu par « les formats des champs Access ne sont pas forcément identiques à ceux de Postgres » ? Tu pourrais donner un exemple ? Super : c'est vendredi! Cependant, je ne voudrai pas voler le post initial... Voici l'exemple pour lequel je n'ai pas encore trouvé de solution rapide et simple : Access dispose d'un champ de type NuméroAuto qui accepte par défaut un entier long, soit incrémental, soit aléatoire. L'intérêt de ce type de champ c'est que si une ligne de la table est détruite, le contenu de ce champ est brûlé. Il n'est donc plus possible de le réutiliser dans une nouvelle ligne. C'est l'usage type d'une traçabilité de numéros de série. Un numéro de série est sensé être unique. Si un produit est détruit, son numéro de série ne doit plus être réutilisatable. Bon, d'accord on pourrait trouver une autre solution que l'usage du NuméroAuto en ajoutant une colonne pour indiquer l'état du numéro de série... mais dans mon cas, je me contente de détruire la ligne du numéro de série dont le produit a été mis au rebus. Extraire toutes les lignes de ce champ pour les mettre dans un fichier csv et les importer dans Postgres ne pose aucun problème. Là n'est pas la question. Par contre je n'ai pas trouvé dans Postgres l'équivalent d'un format de champ qui corresponde au format NuméroAuto d'Access. Dans Postgres, le format serial UNIQUE NOT NULL ne tient pas compte des numéro brûlés. Donc pour migrer une telle colonne je n'ai pas de solution qui soit automatique. En SQL on fait ça avec une séquence. -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20130719121913.gu4...@rail.eu.org
Re: Script Bash pour convertir BD Access vers MySQL ?
Le Fri, 19 Jul 2013 14:19:13 +0200, Erwan David er...@rail.eu.org a écrit : On Fri, Jul 19, 2013 at 02:11:47PM CEST, Alain Vaugham al...@vaugham.com said: Le Fri, 19 Jul 2013 13:25:06 +0200, Sébastien NOBILI sebnewslet...@free.fr a écrit : Le vendredi 19 juillet 2013 à 12:41, Alain Vaugham a écrit : J'ai probablement une piste :) → http://nialldonegan.me/2007/03/10/converting-microsoft-access-mdb-into-csv-or-mysql-in-linux/ Mon expérience : les formats des champs Access ne sont pas forcément identiques à ceux de Postgres. Donc il me faut tous les reformater à la main pour les mettre au format Postgres. S'il existe un script qui sait deviner comment transformer les formats de la source vers le format de la cible alors je suis preneur aussi! Qu'entends-tu par « les formats des champs Access ne sont pas forcément identiques à ceux de Postgres » ? Tu pourrais donner un exemple ? Super : c'est vendredi! Cependant, je ne voudrai pas voler le post initial... Voici l'exemple pour lequel je n'ai pas encore trouvé de solution rapide et simple : Access dispose d'un champ de type NuméroAuto qui accepte par défaut un entier long, soit incrémental, soit aléatoire. L'intérêt de ce type de champ c'est que si une ligne de la table est détruite, le contenu de ce champ est brûlé. Il n'est donc plus possible de le réutiliser dans une nouvelle ligne. C'est l'usage type d'une traçabilité de numéros de série. Un numéro de série est sensé être unique. Si un produit est détruit, son numéro de série ne doit plus être réutilisatable. Bon, d'accord on pourrait trouver une autre solution que l'usage du NuméroAuto en ajoutant une colonne pour indiquer l'état du numéro de série... mais dans mon cas, je me contente de détruire la ligne du numéro de série dont le produit a été mis au rebus. Extraire toutes les lignes de ce champ pour les mettre dans un fichier csv et les importer dans Postgres ne pose aucun problème. Là n'est pas la question. Par contre je n'ai pas trouvé dans Postgres l'équivalent d'un format de champ qui corresponde au format NuméroAuto d'Access. Dans Postgres, le format serial UNIQUE NOT NULL ne tient pas compte des numéro brûlés. Donc pour migrer une telle colonne je n'ai pas de solution qui soit automatique. En SQL on fait ça avec une séquence. Ce n'est pas suffisant. Malheureusement, une séquence seule autorise l'usage des numéros brûlés. -- Alain Vaugham Clef GPG : 0xD26D18BC -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20130719142754.7a85cc2b@mach07.localdomain
Re: Script Bash pour convertir BD Access vers MySQL ?
On Fri, 19 Jul 2013 14:11:47 +0200 Alain Vaugham al...@vaugham.com wrote: Par contre je n'ai pas trouvé dans Postgres l'équivalent d'un format de champ qui corresponde au format NuméroAuto d'Access. Dans Postgres, le format serial UNIQUE NOT NULL ne tient pas compte des numéro brûlés. Pourquoi utiliser un 'serial' (ne serais-ce déjà, parce que certains S/N comportent des lettres)? Par ailleurs, tu confonds 'brûlé' (mauvaise habitude donnée par qq chose qui n'est même pas l'ombre d'un RDBMS) et non-réutilisable; si ton article est vendu, il suffit d'un flag pour l'indiquer (c'est en Gal la présence d'un lien vers la facture) et donner à son S/N la caractéristique 'UNIQUE NOT NULL' suffit à créer un index interdisant la réutilisation dudit S/N par unicité. Et peu importe que le lien article-S/N soit existant ou non, le simple fait de renseigner un S/N le rend indisponible à toute réutilisation. Ça donne qq chose comme ça: table sn ( idserial not null primary key, snvarchar(128) not null UNIQUE) table article ( idbigserialnot null primary key, bla, bla…) table article_sn ( ida int4not null references article(id), ids int8not null references sn(id)) et pour retrouver ses petits (et savoir si l'article est en stock ou vendu): table facture_sn ( idf int4not null references facture(id), ids int8not null references sn(id)) -- 1PFmiss : c’était quoi le problème d'internet de ta mère ? Jiraya09 : ma mère... -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20130719143740.5899d55c@anubis.defcon1
Re: Script Bash pour convertir BD Access vers MySQL ?
Le Fri, 19 Jul 2013 14:37:40 +0200, Bzzz lazyvi...@gmx.com a écrit : On Fri, 19 Jul 2013 14:11:47 +0200 Alain Vaugham al...@vaugham.com wrote: Par contre je n'ai pas trouvé dans Postgres l'équivalent d'un format de champ qui corresponde au format NuméroAuto d'Access. Dans Postgres, le format serial UNIQUE NOT NULL ne tient pas compte des numéro brûlés. Pourquoi utiliser un 'serial' (ne serais-ce déjà, parce que certains S/N comportent des lettres)? Par ailleurs, tu confonds 'brûlé' (mauvaise habitude donnée par qq chose qui n'est même pas l'ombre d'un RDBMS) et non-réutilisable; si ton article est vendu, il suffit d'un flag pour l'indiquer (c'est en Gal la présence d'un lien vers la facture) et donner à son S/N la caractéristique 'UNIQUE NOT NULL' suffit à créer un index interdisant la réutilisation dudit S/N par unicité. Et peu importe que le lien article-S/N soit existant ou non, le simple fait de renseigner un S/N le rend indisponible à toute réutilisation. Bien vu : La structure et l'usage initial de la bdd n'était pas au top. Résultat : Pour migrer cette base Accces vers Postgres il faut la reconcevoir. C'est à mon avis ce qui risque souvent d'arriver lors d'une migration. Donc pour en revenir au post initial de Serge, je doute qu'on puisse trouver le script qui va bien même avec MySQL... Ça donne qq chose comme ça: [...] Merci beaucoup pour ton exemple. -- Alain Vaugham Clef GPG : 0xD26D18BC -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20130719145033.5e221486@mach07.localdomain
Re: Script Bash pour convertir BD Access vers MySQL ?
Le vendredi 19 juillet 2013 à 14:37, Bzzz a écrit : On Fri, 19 Jul 2013 14:11:47 +0200 Alain Vaugham al...@vaugham.com wrote: Par contre je n'ai pas trouvé dans Postgres l'équivalent d'un format de champ qui corresponde au format NuméroAuto d'Access. Dans Postgres, le format serial UNIQUE NOT NULL ne tient pas compte des numéro brûlés. Pourquoi utiliser un 'serial' (ne serais-ce déjà, parce que certains S/N comportent des lettres)? Je pense que le S/N était là pour illustrer le propos, une analogie donc. Pour moi, le type « serial » de PostgreSQL est l'équivalent du NuméroAuto d'Access, c'est un champ qui va s'incrémenter tout seul et servira (en général) de clé primaire. Seb -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20130719131633.gd14...@sebian.nob900.homeip.net
[HS] - script bash et mot de passe mysql vide
Bonjour, J'ai écrit un petit script de backup de base mysql, je n'ai pas de password pour le user qui fera le dump. USER='mon_user' PASSWD='' Je mets ça mais ça ne passe pas automatiquement, j'ai essayé en mettant un espace : PASSWD=' ' Ca ne passe pas non plus, le script m'oblige à valider, vous avez une idée ? -- Nahliel -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20120215093915.ga21...@srvdebian.info-cr.fr
Re: [HS] - script bash et mot de passe mysql vide
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 15/02/2012 10:39, Nahliel Steinberg wrote: Bonjour, J'ai écrit un petit script de backup de base mysql, je n'ai pas de password pour le user qui fera le dump. USER='mon_user' PASSWD='' Je mets ça mais ça ne passe pas automatiquement, j'ai essayé en mettant un espace : PASSWD=' ' Ca ne passe pas non plus, le script m'oblige à valider, vous avez une idée ? Bonjour, peut tu essayer sans mettre d'argument -p (passwd) dans la chaine de connection ? Cordialement, Guillaume. - -- Guillaume Seren - -- Non seulement Dieu joue aux dés mais il les jette parfois là où on ne peut les voir. Stephen Hawking - -- FAQ : http://wiki.debian.org/fr/FrenchLists - -- -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.11 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iQEcBAEBAgAGBQJPO3+5AAoJEB8oWtIhEKr3r3wH/0PMiUUsowQIBG+HrHKXX6zQ hC22IVtuO+y3W+tUo/b6X/FN3heHA2wocfvUcx0HgnEECnouCCLT1q6DvWj/aFbR uajVi0l6eslBOWuVokZNoozFfQnfA5N764f3HyeSML52HmESaMmFrz68Tj1zSVBK 0QfxN/gbAblZbsycqPUENGXAGRn/hvCM3YM0lA7QOLw4c2e+kRjj+O2Hv082EPLN PbOu6SFhvzfplqsoS4h68gZWhQjVkLk8sppnqTi8t2MVeew9Bk0a7+kO/w6MvPOG AdMvt8b6ovc4xYTamfgmE1ziR9iX0RqKu1vxk8dWIUBFefeSn+1TYMysJ7bInBY= =tiUJ -END PGP SIGNATURE- -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/4f3b7fb9.2090...@gmail.com
Re: [HS] - script bash et mot de passe mysql vide
Le Wed, 15 Feb 2012 10:39:15 +0100, Nahliel Steinberg nahliel.steinb...@gmail.com a écrit : Bonjour, J'ai écrit un petit script de backup de base mysql, je n'ai pas de password pour le user qui fera le dump. USER='mon_user' PASSWD='' Je mets ça mais ça ne passe pas automatiquement, j'ai essayé en mettant un espace : PASSWD=' ' Ca ne passe pas non plus, le script m'oblige à valider, vous avez une idée ? bonjour, le lien sur le script : http://bash.cyberciti.biz/backup/backup-mysql-database-server-2/ reste à le faire appliquer et le mettre en tâche cron ... slt bernard /* Qui a mis le congélateur en position dégivrage ? /* -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20120215105305.72e98773.bernard.schoenac...@free.fr
Re: [HS] - script bash et mot de passe mysql vide
Le Wed, 15 Feb 2012 10:39:15 +0100, Nahliel Steinberg nahliel.steinb...@gmail.com a écrit : Bonjour, J'ai écrit un petit script de backup de base mysql, je n'ai pas de password pour le user qui fera le dump. USER='mon_user' PASSWD='' Je mets ça mais ça ne passe pas automatiquement, j'ai essayé en mettant un espace : PASSWD=' ' Ca ne passe pas non plus, le script m'oblige à valider, vous avez une idée ? ne pas mettre l'option -p si tu n'utilises pas de mdp Bruno -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20120215105508.60fb9...@bruno.vf-online.local
Re: [HS] - script bash et mot de passe mysql vide
Merci pour la réponse ça marche sans le -p de la commande. -- Nahliel -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20120215103927.ga28...@srvdebian.info-cr.fr
Re: Script bash
Ce que vous faites là pour compter les pages imprimées m'intéresse beaucoup. Sur une debian etch avec une imprimante en local j'avais écrit un script pour décompter les pages. Ce script allait compter le nombre de lignes du fichier /var/log/cups/page_log, ce qui correspondait au nombre de pages. Depuis le passage à Lenny, plus moyen de mettre la main sur le nombre de pages imprimés, je n'arrive plus qu'à voir le nombre de fois qu'on a accédé à l'imprimante, que ce soit pour une page ou plus. Si vous utilisez cups, auriez-vous une piste pour savoir dans quel fichier se cache le nombre de pages imprimées ? J'ai cherché sur le site de cups mais en vain. Merci pour votre aide. Christophe Peric Pourquoi le faire à partir de cups alors que l'imprimante à un compteur. Je vais consulter le compteur et remonte la valeur pour l'instant. Il faut activer snmp sur l'imprimante (si elle est réseau). Pour une imprimante non réseau, il doit y avoir une page de test ou de config que tu peux sortir pour avoir le nombre de pages imprimées. -- Nahliel -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20110610055905.GA2140@osiris
Script bash
Bonjour, J'ai besoin de récupérer une liste d'ip une à une depuis un fichier pour passer une commande snmp. Avez-vous une idée de comment je peux faire ça ? J'ai fait un mail pour un subcribe à la liste scriptbash, je n'ai eu aucune réponse. -- Nahliel -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20110609085512.ga26...@srvdebian.info-cr.fr
Re : Script bash
la commande apply ( à compiler depuis openbsd.org ) est géniale pour ce genre de choses F. -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/199903.89031...@web29505.mail.ird.yahoo.com
Re: Script bash
Le 09/06/2011 10:55, Nahliel Steinberg a écrit : Bonjour, J'ai besoin de récupérer une liste d'ip une à une depuis un fichier pour passer une commande snmp. Avez-vous une idée de comment je peux faire ça ? J'ai fait un mail pour un subcribe à la liste scriptbash, je n'ai eu aucune réponse. Bonjour, admettons que dans ton fichier tu aies une adresse ip par ligne #!/bin/bash FICHIP=monfichier.txt while read a do snmpget -c public $a done $FICHIP *http://www.commentcamarche.net/faq/5027-comment-lire-un-fichier-ligne-par-ligne valable d'un manière générale pour lire un fichier ligne par ligne * -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/4df08bd7.3020...@rignier.com
Re: Script bash
Bonjour, admettons que dans ton fichier tu aies une adresse ip par ligne #!/bin/bash FICHIP=monfichier.txt while read a do snmpget -c public $a done $FICHIP Merci ça marche, je complique : iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 12990 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 17265 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 7294 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 19067 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 7071 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 4038 Voici un exemple de retour de la commande. je voudrai additionner les valeurs qui sont remontées par la commande et afficher le total. ça vous semble possible ? -- Nahliel -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20110609120230.gc29...@srvdebian.info-cr.fr
Re: Script bash
Le Thu, 9 Jun 2011 14:02:30 +0200, Nahliel Steinberg nahliel.steinb...@gmail.com a écrit : Bonjour, admettons que dans ton fichier tu aies une adresse ip par ligne #!/bin/bash FICHIP=monfichier.txt while read a do snmpget -c public $a done $FICHIP Merci ça marche, je complique : iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 12990 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 17265 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 7294 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 19067 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 7071 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 4038 Voici un exemple de retour de la commande. je voudrai additionner les valeurs qui sont remontées par la commande et afficher le total. ça vous semble possible ? shalom, voici la réponse d'un pauvre goy ignorant : http://bash.cyberciti.biz/shell-math/sum-of-two-numbers-2/ slt bernard -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20110609141233.4884b8c5.bernard.schoenac...@free.fr
Re: Script bash
Hello, Le jeudi 09 juin 2011 à 14:02 +0200, Nahliel Steinberg a écrit : Merci ça marche, je complique : iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 12990 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 17265 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 7294 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 19067 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 7071 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 4038 Voici un exemple de retour de la commande. je voudrai additionner les valeurs qui sont remontées par la commande et afficher le total. ça vous semble possible ? De nombreuses façons de faire... Exemple avec awk, ajoute | awk 'BEGIN {s=0} {s=s+$4} END {print s}' à la fin de ta commande. Bruno -- DRESSAGE M : Je lui donne la patte... il me donne le sucre... Cronch ! Miom ! Je l'ai parfaitement conditionné, ce con... signature.asc Description: This is a digitally signed message part
Re: Script bash
Exemple avec awk, ajoute | awk 'BEGIN {s=0} {s=s+$4} END {print s}' à la fin de ta commande. Bruno Genial Bruno ca marche. En fait ce script va me chercher les compteurs de pages imprimees sur les imprimantes. Mon but est de faire le calcul du nombre de pages imprimees pour tous les types d imprimantees, pour quantifier le papier imprimes par les utilisateurs. J ai environ 500 imprimantes et une 40aine de copieurs. J'ai reussi a isoler donc les ip dans un fichier, dont je me sert pour le script, mais j ai pu aussi rajouter en deuxieme champs $1 le champ ip et $2 pour le nom redirige dans un fichier et j obtient ce format : 172.17.191.250 IM0996-EPSM2000 etc.. est-ce que c'est possible d inserrer le nom apres le comptage ? Le comptage marche impeccable on dirait (dois-je faire une verification quand meme ou non ?) Quand j'ai des imprimantes qui ne sont pas connectees voici le retour que j ai : 123890 4546 41249 Timeout: No Response from 172.17.191.168. 0 (forcement il mets 0 puisqu elle n est pas connectee) 4549 121211 etc Comme j'ai mon fichier avec ip + nom Penses-tu qu il est possible d afficher a la place de : Timeout: No Response from 172.17.191.168. 0 ceci : NOM_IMP n est pas sous tension Merci pour vos reponses en tout cas j ai bien avance, en tout cas le comptage c'est deja pas mal ;-) -- Nahliel -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20110609170633.gb2...@srvdebian.info-cr.fr
Re: Script bash
De nombreuses façons de faire... Exemple avec awk, ajoute | awk 'BEGIN {s=0} {s=s+$4} END {print s}' à la fin de ta commande. Bruno Je viens de verifier, a priori le total n est pas juste ;-( -- Nahliel -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20110609180634.ga3...@srvdebian.info-cr.fr
Re: Script bash
Je viens de m'appercevoir que le dernier {print s} n'est pas afficher. -- Nahliel -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20110609183840.gb3...@srvdebian.info-cr.fr
Re: Script bash
Le 09/06/2011 19:06, Nahliel Steinberg a écrit : .../... Genial Bruno ca marche. En fait ce script va me chercher les compteurs de pages imprimees sur les imprimantes. Mon but est de faire le calcul du nombre de pages imprimees pour tous les types d imprimantees, pour quantifier le papier imprimes par les utilisateurs. J ai environ 500 imprimantes et une 40aine de copieurs. .../... Bonjour, Ce que vous faites là pour compter les pages imprimées m'intéresse beaucoup. Sur une debian etch avec une imprimante en local j'avais écrit un script pour décompter les pages. Ce script allait compter le nombre de lignes du fichier /var/log/cups/page_log, ce qui correspondait au nombre de pages. Depuis le passage à Lenny, plus moyen de mettre la main sur le nombre de pages imprimés, je n'arrive plus qu'à voir le nombre de fois qu'on a accédé à l'imprimante, que ce soit pour une page ou plus. Si vous utilisez cups, auriez-vous une piste pour savoir dans quel fichier se cache le nombre de pages imprimées ? J'ai cherché sur le site de cups mais en vain. Merci pour votre aide. Christophe Peric -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/4df12a55.6030...@laposte.net
Re: Script bash
Le 09/06/2011 14:02, Nahliel Steinberg a écrit : Bonjour, admettons que dans ton fichier tu aies une adresse ip par ligne #!/bin/bash FICHIP=monfichier.txt while read a do snmpget -c public $a done $FICHIP Merci ça marche, je complique : iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 12990 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 17265 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 7294 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 19067 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 7071 iso.3.6.1.2.1.43.10.2.1.4.1.1 = Counter32: 4038 Voici un exemple de retour de la commande. je voudrai additionner les valeurs qui sont remontées par la commande et afficher le total. ça vous semble possible ? ce serait pas le moment de passer à Perl? if (/= Counter\d+: (\d+)/) { $sum += $1; } -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20110609222643.3099d13a7...@liszt.debian.org
Re: Script bash
Le 09/06/2011 10:55, Nahliel Steinberg a écrit : Bonjour, J'ai besoin de récupérer une liste d'ip une à une depuis un fichier pour passer une commande snmp. Avez-vous une idée de comment je peux faire ça ? J'ai fait un mail pour un subcribe à la liste scriptbash, je n'ai eu aucune réponse. Bonjour j'avais travaillé il y a longtemps sur les mêmes problèmes (récupérer les compteurs d'imprimantes) après m'être fabriqué un petit avec snmpget je suis finalement passé à cacti, il existe un template snmp_printer inconvénient : ça n'additionne pas les compteurs avantage, c'est joli et le service compta peut facilement voir les graphes bon courage -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/4df1a4dd.7000...@gmail.com
Script Bash, prendre en considération l'espace dans les noms de fichier
Bonjour à tous, J'ai un petit soucis avec un petit script j'ai un dossier dans lequel je voudrais extraire tous les fichiers qui s'y trouvent, mon script est le suivant for myfile in $(ls) do rar e $myfile done le problème c'est que tous les fichiers sont nommés avec des espaces comme séparateur et le script considère chaque mot comme fichier à part ! Comment faire pour prendre en considération l'espace dans le nom de fichier ? Merci pour votre aide par exemple si j'ai un fichier nommé mon fichier.rar en remplaçant rar e $myfile par echo $myfile j'ai le réslutat suivant mon fichier une idée, pour éviter ce souci ? Merci -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/935529.41665...@web26307.mail.ukl.yahoo.com
Re: Script Bash, prendre en considération l'espace dans les noms de fichier
Le Sat, 4 Jun 2011 15:50:27 +0100 (BST), Tahar BEN ACHOUR tahar...@yahoo.fr a écrit : Bonjour à tous, J'ai un petit soucis avec un petit script j'ai un dossier dans lequel je voudrais extraire tous les fichiers qui s'y trouvent, mon script est le suivant for myfile in $(ls) do rar e $myfile done le problème c'est que tous les fichiers sont nommés avec des espaces comme séparateur et le script considère chaque mot comme fichier à part ! Comment faire pour prendre en considération l'espace dans le nom de fichier ? Merci pour votre aide par exemple si j'ai un fichier nommé mon fichier.rar en remplaçant rar e $myfile par echo $myfile j'ai le réslutat suivant mon fichier une idée, pour éviter ce souci ? Merci bonjour, pour ton souchi : man detox man rename mode opératoire : detox -u utf_8 * rename 'y/A-Z/a-z/' * autrement c'est pas rar mais unrar slt bernard -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20110604170006.1aaa47bd.bernard.schoenac...@free.fr
Re: Script Bash, prendre en considération l'espace dans les noms de fichier
On 04/06/2011 16:50, Tahar BEN ACHOUR wrote: Bonjour à tous, J'ai un petit soucis avec un petit script j'ai un dossier dans lequel je voudrais extraire tous les fichiers qui s'y trouvent, mon script est le suivant for myfile in $(ls) do rar e $myfile done le problème c'est que tous les fichiers sont nommés avec des espaces comme séparateur et le script considère chaque mot comme fichier à part ! Comment faire pour prendre en considération l'espace dans le nom de fichier ? Merci pour votre aide par exemple si j'ai un fichier nommé mon fichier.rar en remplaçant rar e $myfile par echo $myfile j'ai le réslutat suivant mon fichier une idée, pour éviter ce souci ? Merci Bonjour, double quotes sur le nom de fichier : ${myfile} /usr/bin/rar a A\ B.rar /etc/passwd for myfile in *.rar; do /usr/bin/rar e ${myfile}; done A+ -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/4dea4dd0.9050...@shom.fr
Re: Script Bash, prendre en considération l'espace dans les noms de fichier
On sam. 04 juin.2011 à 15:50:27, Tahar BEN ACHOUR wrote: une idée, pour éviter ce souci ? ne pas utiliser ls dans une boucle for, car pour un fichier nommer 'my file', la boucle itérera sur 'my', puis sur 'file'. la bonne méthode est : for file in ./* do echo rar e \$file\ #pour voir, et si c'est correct : do rar e $file done -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20110604160247.ga3...@chorion.ath.cx
Re: Script Bash, prendre en considération l'espace dans les noms de fichier
Le 04/06/2011 16:50, Tahar BEN ACHOUR a écrit : Bonjour à tous, J'ai un petit soucis avec un petit script j'ai un dossier dans lequel je voudrais extraire tous les fichiers qui s'y trouvent, mon script est le suivant for myfile in $(ls) do rar e $myfile done le problème c'est que tous les fichiers sont nommés avec des espaces comme séparateur et le script considère chaque mot comme fichier à part ! Comment faire pour prendre en considération l'espace dans le nom de fichier ? for agit sur chacun des petits bouts, qui sont séparés par des espaces (tu peux changer le séparateur, mais gare à toi...). il faut utiliser autre chose. ls | while read file; do macommande $file; done on peut aussi s'amuser avec find/xargs/... Merci pour votre aide par exemple si j'ai un fichier nommé mon fichier.rar en remplaçant rar e $myfile par echo $myfile j'ai le réslutat suivant mon fichier une idée, pour éviter ce souci ? Merci -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20110604220501.cb11313a6...@liszt.debian.org
script bash
Bonjour à tous, Une petite question en bash, Je voudrais savoir comment faire pour échapper les ' ' afin que ma variable soit prise en compte, voici mon script, en fait c'est par rapport à la commande sed while read line do domain=`echo $line | awk -F/ '{print($3.log)}'` echo $domain sed -i '/apache2/d' $line sed -i '1iLogFile /srv/logs/$domain' $line donemyfile ici je n'ai pas su comment echapper la quote pour que $domain soit prise en compte dans sed -i 1iLogFile /srv/logs/$domain' $line Merci pour votre aide -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/658103.25938...@web26306.mail.ukl.yahoo.com
Re : script bash
Je fais ca en mettant ma variable entre double quote : sed -i '1iLogFile /srv/logs/$domain' $line Merci pour ton aide, mais ça ne marche pas ainsi j'obtiens $domain comme résultat Attention, mes commandes sed sont souvent elles aussi entre double quote (sed commande fichier), je ne sais pas si cela influe ou non. Fred merci -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/480967.36636...@web26306.mail.ukl.yahoo.com
Re: script bash
Bonjour. Au lieu d'utiliser des apostrophes('), on peux utiliser des guillemets (). Par exemple : sed -i 1iLogFile /srv/logs/$domain $line Juxtaposer les apostrophes/guillemets marche aussi : sed -i '1iLogFile /srv/logs/'$domain $line Tout ce qui est mis entre apostrophe est toujours pris littéralement, et il n'est pas possible d'échapper quoi que ce soit. La preuve en est que : echo '\' affiche bien un antislash. Maxime. Tahar BEN ACHOUR a écrit : Bonjour à tous, Une petite question en bash, Je voudrais savoir comment faire pour échapper les ' ' afin que ma variable soit prise en compte, voici mon script, en fait c'est par rapport à la commande sed while read line do domain=`echo $line | awk -F/ '{print($3.log)}'` echo $domain sed -i '/apache2/d' $line sed -i '1iLogFile /srv/logs/$domain' $line donemyfile ici je n'ai pas su comment echapper la quote pour que $domain soit prise en compte dans sed -i 1iLogFile /srv/logs/$domain' $line Merci pour votre aide
Re: script bash
Tahar BEN ACHOUR wrote: Bonjour à tous, Bonjour, Une petite question en bash, Je voudrais savoir comment faire pour échapper les ' ' afin que ma variable soit prise en compte, [..] sed -i '1iLogFile /srv/logs/$domain' $line ici je n'ai pas su comment echapper la quote pour que $domain soit prise en compte dans sed -i 1iLogFile /srv/logs/$domain' $line Je fais ca en mettant ma variable entre double quote : sed -i '1iLogFile /srv/logs/$domain' $line Attention, mes commandes sed sont souvent elles aussi entre double quote (sed commande fichier), je ne sais pas si cela influe ou non. Fred -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/4c3483a4.9090...@enseirb-matmeca.fr
Re : script bash[RESOLU]
Merci beaucoup avec guillemets ça marche, je pensais pas qu'on pouvait remplacer les quotes par des guillemets Merci beaucoup pour votre aide De : FERRINO Maxime dag...@yahoo.fr À : debian-user-french@lists.debian.org Envoyé le : Mer 7 juillet 2010, 18h 50min 26s Objet : Re: script bash Bonjour. Au lieu d'utiliser des apostrophes('), on peux utiliser des guillemets (). Par exemple : sed -i 1iLogFile /srv/logs/$domain $line Juxtaposer les apostrophes/guillemets marche aussi : sed -i '1iLogFile /srv/logs/'$domain $line Tout ce qui est mis entre apostrophe est toujours pris littéralement, et il n'est pas possible d'échapper quoi que ce soit. La preuve en est que : echo '\' affiche bien un antislash. Maxime. Tahar BEN ACHOUR a écrit : Bonjour à tous, Une petite question en bash, Je voudrais savoir comment faire pour échapper les ' ' afin que ma variable soit prise en compte, voici mon script, en fait c'est par rapport à la commande sed while read line do domain=`echo $line | awk -F/ '{print($3.log)}'` echo $domain sed -i '/apache2/d' $line sed -i '1iLogFile /srv/logs/$domain' $line donemyfile ici je n'ai pas su comment echapper la quote pour que $domain soit prise en compte dans sed -i 1iLogFile /srv/logs/$domain' $line Merci pour votre aide -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/102572.18166...@web26304.mail.ukl.yahoo.com
Re: Re : script bash
Tahar BEN ACHOUR wrote: Je fais ca en mettant ma variable entre double quote : sed -i '1iLogFile /srv/logs/$domain' $line Merci pour ton aide, mais ça ne marche pas ainsi j'obtiens $domain comme résultat Et en mettant des double quote partout : sed -i 1iLogFile /srv/logs/$domain $line ? Fred Attention, mes commandes sed sont souvent elles aussi entre double quote (sed commande fichier), je ne sais pas si cela influe ou non. Fred merci -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/4c3487d4.3070...@enseirb-matmeca.fr
Re: [HS] exécutio n script bash
Je n'ai rien trouvé de mieux que d'exécuter le script en me connectant directement sur le serveur. Merci encore de votre aide. tans pis -- Cerdocyon key ID 0x773B483BAC099326 -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20100316100239.ga28...@the-rabbit-hole.co.uk
Re: [HS] exécution script bash
Le 14680ième jour après Epoch, Le Cerdocyon écrivait: Quand je lance le script de ma machine avec : echo lescriptdistant | ssh t...@serveur1 le script avec ses commandes intégrées fonctionnent, mais me déconnecte au menu Normal. Le *stdin* de la commande ssh ne contient que lescriptdistant\n, du coup quand le script pose la question, stdin est vide et fermé --- arrêt. quand je lance ssh t...@serveur1 lescriptdistant le menu fonctionne mais pas les commandes intégrées au script Là, par contre, c'est un peu plus bizarre... Les commandes en question, c'est quoi? Quand je lance de l'une ou l'autre façon la connexion ssh lancement du script j'ai un TERM environment variable not set. qui s'affiche, ça doit certainement venir de là. Essaye avec l'option -t de ssh, au cas où. Ce message proviens sûrement de l'interprêteur distant (bash?) ou d'une des commandes distantes. pgp9zelsoCf3S.pgp Description: PGP signature
[HS] exécutio n script bash
Bonjour, Je lance un script via ssh qui pose une petite question : PS3='Voulez vous lister l etat des deux daemons toto et titi ?' LISTE=([o] oui [n] non) select CHOIX in ${lis...@]} ; do case $REPLY in 1|o) echo ok je fais break ;; 2|n) echo -e '\033[32m=== Fin du Traitement ===\033[m' break ;; esac done En local le script fonctionne très bien, par contre via ssh à distance quand il arrive au questionnaire la connexion est coupée. est-ce normal chers docteurs ? -- Cerdocyon key ID 0x773B483BAC099326 signature.asc Description: Digital signature
Re: [HS] exécution script bash
chez moi ça marche a distance via ssh ! JPL - Le vendredi 12 mars 2010 à 14:55 +0100, Le Cerdocyon a écrit : Bonjour, Je lance un script via ssh qui pose une petite question : PS3='Voulez vous lister l etat des deux daemons toto et titi ?' LISTE=([o] oui [n] non) select CHOIX in ${lis...@]} ; do case $REPLY in 1|o) echo ok je fais break ;; 2|n) echo -e '\033[32m=== Fin du Traitement ===\033[m' break ;; esac done En local le script fonctionne très bien, par contre via ssh à distance quand il arrive au questionnaire la connexion est coupée. est-ce normal chers docteurs ? -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/1268403320.3027.13.ca...@p0064.vcharite.univ-mrs.fr
Re: [HS] exécutio n script bash
Le 12/03/10 à 15:15, Jean-Paul Lacharme a ecrit: chez moi ça marche a distance via ssh ! JPL ? Bizarre ! -- Cerdocyon key ID 0x773B483BAC099326 -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20100312142529.ga18...@the-rabbit-hole.co.uk
Re: [HS] exécution script bash
Le vendredi 12 mars 2010 à 15:25 +0100, Le Cerdocyon a écrit : Le 12/03/10 à 15:15, Jean-Paul Lacharme a ecrit: chez moi ça marche a distance via ssh ! JPL ? Bizarre ! -- Cerdocyon key ID 0x773B483BAC099326 Il est possible que ça soit un problème de config SSH. Est-ce que tu peux poster ton sshd_config ? Peut-être qu'on y verra quelque chose de pas net. -- Guillaume -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/1268405250.8450.28.ca...@localhost
Re: [HS] exécutio n script bash
Quand je lance le script de ma machine avec : echo lescriptdistant | ssh t...@serveur1 le script avec ses commandes intégrées fonctionnent, mais me déconnecte au menu quand je lance ssh t...@serveur1 lescriptdistant le menu fonctionne mais pas les commandes intégrées au script Quand je lance de l'une ou l'autre façon la connexion ssh lancement du script j'ai un TERM environment variable not set. qui s'affiche, ça doit certainement venir de là. voici le sshd_config START # $OpenBSD: sshd_config,v 1.73 2005/12/06 22:38:28 reyk Exp $ # This is the sshd server system-wide configuration file. See # sshd_config(5) for more information. # This sshd was compiled with PATH=/usr/local/bin:/bin:/usr/bin # The strategy used for options in the default sshd_config shipped with # OpenSSH is to specify options with their default value where # possible, but leave them commented. Uncommented options change a # default value. #Port 22 #Protocol 2,1 Protocol 2 #AddressFamily any #ListenAddress 0.0.0.0 #ListenAddress :: # HostKey for protocol version 1 #HostKey /etc/ssh/ssh_host_key # HostKeys for protocol version 2 #HostKey /etc/ssh/ssh_host_rsa_key #HostKey /etc/ssh/ssh_host_dsa_key # Lifetime and size of ephemeral version 1 server key #KeyRegenerationInterval 1h #ServerKeyBits 768 # Logging # obsoletes QuietMode and FascistLogging #SyslogFacility AUTH SyslogFacility AUTHPRIV #LogLevel INFO # Authentication: #LoginGraceTime 2m #PermitRootLogin yes #StrictModes yes #MaxAuthTries 6 #RSAAuthentication yes #PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys # For this to work you will also need host keys in /etc/ssh/ssh_known_hosts #RhostsRSAAuthentication no # similar for protocol version 2 #HostbasedAuthentication no # Change to yes if you don't trust ~/.ssh/known_hosts for # RhostsRSAAuthentication and HostbasedAuthentication #IgnoreUserKnownHosts no #IgnoreUserKnownHosts no # Don't read the user's ~/.rhosts and ~/.shosts files #IgnoreRhosts yes # To disable tunneled clear text passwords, change to no here! #PasswordAuthentication yes #PermitEmptyPasswords no PasswordAuthentication yes # Change to no to disable s/key passwords #ChallengeResponseAuthentication yes ChallengeResponseAuthentication no # Kerberos options #KerberosAuthentication no #KerberosOrLocalPasswd yes #KerberosTicketCleanup yes #KerberosGetAFSToken no # GSSAPI options #GSSAPIAuthentication no GSSAPIAuthentication yes #GSSAPICleanupCredentials yes GSSAPICleanupCredentials yes # Set this to 'yes' to enable PAM authentication, account processing, # and session processing. If this is enabled, PAM authentication will # be allowed through the ChallengeResponseAuthentication mechanism. # Depending on your PAM configuration, this may bypass the setting of # PasswordAuthentication, PermitEmptyPasswords, and # PermitRootLogin without-password. If you just want the PAM account and # session checks to run without PAM authentication, then enable this but set # ChallengeResponseAuthentication=no #UsePAM no UsePAM yes # Accept locale-related environment variables AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT AcceptEnv LC_IDENTIFICATION LC_ALL #AllowTcpForwarding yes #GatewayPorts no #X11Forwarding no X11Forwarding yes X11DisplayOffset 10 X11UseLocalhost yes #PrintMotd yes #PrintLastLog yes #TCPKeepAlive yes #UseLogin no #UsePrivilegeSeparation yes PermitUserEnvironment yes #Compression delayed #ClientAliveInterval 0 #ClientAliveCountMax 3 #ShowPatchLevel no #UseDNS yes #PidFile /var/run/sshd.pid #MaxStartups 10 #PermitTunnel no # no default banner path #Banner /some/path # override default of no subsystems Subsystem sftp/usr/libexec/openssh/sftp-server /END -- Cerdocyon key ID 0x773B483BAC099326 signature.asc Description: Digital signature
Re: [HS] exécution script bash
Le Cerdocyon a écrit : [...] j'ai un TERM environment variable not set. qui s'affiche, ça doit certainement venir de là. regarde l'option -t de ssh Fanfan -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/4b9a6121.50...@cerbelle.net
Re: [HS] exécution script bash
Le vendredi 12 mars 2010 à 16:18 +0100, Le Cerdocyon a écrit : Quand je lance le script de ma machine avec : echo lescriptdistant | ssh t...@serveur1 le script avec ses commandes intégrées fonctionnent, mais me déconnecte au menu quand je lance ssh t...@serveur1 lescriptdistant chez moi, c'est la premiere forme qui marche (menu + execution) la seconde pose la question et rend la main sans rien faire. JPL le menu fonctionne mais pas les commandes intégrées au script Quand je lance de l'une ou l'autre façon la connexion ssh lancement du script j'ai un TERM environment variable not set. qui s'affiche, ça doit certainement venir de là. voici le sshd_config START # $OpenBSD: sshd_config,v 1.73 2005/12/06 22:38:28 reyk Exp $ # This is the sshd server system-wide configuration file. See # sshd_config(5) for more information. # This sshd was compiled with PATH=/usr/local/bin:/bin:/usr/bin # The strategy used for options in the default sshd_config shipped with # OpenSSH is to specify options with their default value where # possible, but leave them commented. Uncommented options change a # default value. #Port 22 #Protocol 2,1 Protocol 2 #AddressFamily any #ListenAddress 0.0.0.0 #ListenAddress :: # HostKey for protocol version 1 #HostKey /etc/ssh/ssh_host_key # HostKeys for protocol version 2 #HostKey /etc/ssh/ssh_host_rsa_key #HostKey /etc/ssh/ssh_host_dsa_key # Lifetime and size of ephemeral version 1 server key #KeyRegenerationInterval 1h #ServerKeyBits 768 # Logging # obsoletes QuietMode and FascistLogging #SyslogFacility AUTH SyslogFacility AUTHPRIV #LogLevel INFO # Authentication: #LoginGraceTime 2m #PermitRootLogin yes #StrictModes yes #MaxAuthTries 6 #RSAAuthentication yes #PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys # For this to work you will also need host keys in /etc/ssh/ssh_known_hosts #RhostsRSAAuthentication no # similar for protocol version 2 #HostbasedAuthentication no # Change to yes if you don't trust ~/.ssh/known_hosts for # RhostsRSAAuthentication and HostbasedAuthentication #IgnoreUserKnownHosts no #IgnoreUserKnownHosts no # Don't read the user's ~/.rhosts and ~/.shosts files #IgnoreRhosts yes # To disable tunneled clear text passwords, change to no here! #PasswordAuthentication yes #PermitEmptyPasswords no PasswordAuthentication yes # Change to no to disable s/key passwords #ChallengeResponseAuthentication yes ChallengeResponseAuthentication no # Kerberos options #KerberosAuthentication no #KerberosOrLocalPasswd yes #KerberosTicketCleanup yes #KerberosGetAFSToken no # GSSAPI options #GSSAPIAuthentication no GSSAPIAuthentication yes #GSSAPICleanupCredentials yes GSSAPICleanupCredentials yes # Set this to 'yes' to enable PAM authentication, account processing, # and session processing. If this is enabled, PAM authentication will # be allowed through the ChallengeResponseAuthentication mechanism. # Depending on your PAM configuration, this may bypass the setting of # PasswordAuthentication, PermitEmptyPasswords, and # PermitRootLogin without-password. If you just want the PAM account and # session checks to run without PAM authentication, then enable this but set # ChallengeResponseAuthentication=no #UsePAM no UsePAM yes # Accept locale-related environment variables AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT AcceptEnv LC_IDENTIFICATION LC_ALL #AllowTcpForwarding yes #GatewayPorts no #X11Forwarding no X11Forwarding yes X11DisplayOffset 10 X11UseLocalhost yes #PrintMotd yes #PrintLastLog yes #TCPKeepAlive yes #UseLogin no #UsePrivilegeSeparation yes PermitUserEnvironment yes #Compression delayed #ClientAliveInterval 0 #ClientAliveCountMax 3 #ShowPatchLevel no #UseDNS yes #PidFile /var/run/sshd.pid #MaxStartups 10 #PermitTunnel no # no default banner path #Banner /some/path # override default of no subsystems Subsystem sftp/usr/libexec/openssh/sftp-server /END -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/1268408516.3027.24.ca...@p0064.vcharite.univ-mrs.fr
Re: [HS] exécution script bash ERRATA
Le vendredi 12 mars 2010 à 16:18 +0100, Le Cerdocyon a écrit : Quand je lance le script de ma machine avec : echo lescriptdistant | ssh t...@serveur1 le script avec ses commandes intégrées fonctionnent, mais me déconnecte au menu quand je lance ssh t...@serveur1 lescriptdistant ERRATA C'est cette derniere qui marche : $ssh t...@serveur ./script -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/1268408740.3027.28.ca...@p0064.vcharite.univ-mrs.fr
Re: problème d'exécution d'un script bash en cron ou via bacula
l3w0rM webmas...@worm-fr.com à écrit le Sat, 27 Feb 2010 08:57:37 +0100 Bonjour à tous j'ai un script bash qui fonctionne bien quand je le lance à la main : ./BeforeJobs.sh quand ce dernier est appelé par bacula j'ai l'erreur : ClientRunBeforeJob: /etc/scripts/bacula/BeforeJob.sh: 15: Syntax error: ( unexpected Pour vérifier le problème j'ai mis mon script dans cron j'ai la même erreur : /etc/scripts/bacula/BeforeJob.sh: 15: Syntax error: ( unexpected voici mon script # # # #!/bin/sh set | grep -i shell= tu remplace /bin/sh par la réponse de la commande ci-dessus -- Cordialement Grégory BULOT -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/20100227100720.6ec14...@morpheusold.bulot-fr.com
Re: problème d'exécution d'un script bash en cron ou via bacula
Pardon, je débarque en plein milieu, mais quelle est l'erreur et/ou le message d'erreur? Merci --Message d'origine-- De : l3w0rM À : Grégory Bulot Cc : Debian list Objet : Re: problème d'exécution d'un script bash en cron ou via bacula Envoyé : 27 fév, 2010 10:39 Le 27/02/2010 10:07, Grégory Bulot a écrit : set | grep -i shell= j ai remplacé et j'obtient la meme chose : #!/bin/bash j'ai toujours l'erreur dans le même ordre d'idée j ai regarder les variables d'environement elle sont les memes UTF8 / LATIN1 j'ai toujours l'erreur merci philippe -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/4b88e840.7000...@worm-fr.com
problème d'exécution d'un script bash en cron ou via bacula
Bonjour à tous j'ai un script bash qui fonctionne bien quand je le lance à la main : ./BeforeJobs.sh quand ce dernier est appelé par bacula j'ai l'erreur : ClientRunBeforeJob: /etc/scripts/bacula/BeforeJob.sh: 15: Syntax error: ( unexpected Pour vérifier le problème j'ai mis mon script dans cron j'ai la même erreur : /etc/scripts/bacula/BeforeJob.sh: 15: Syntax error: ( unexpected à priori cela coinse au niveau de mon tableau j'ai essaye les ecritutres suivante trouvée sur le web : avec ou sans espace entre la parenthèse et le premier caractère à l'intérieur de cette dernière ( idem à la fin de la parenthèse ) = Tableau=([1]=postgres [2]=template1 [3]=mantis [4]=dbnl51 [5]=ipplan) = Tableau=(postgres template1 mantis dbnl51 ipplan) = declare -a Tableau=([1]=postgres [2]=template1 [3]=mantis [4]=dbnl51 [5]=ipplan) = declare -a Tableau=(postgres template1 mantis dbnl51 ipplan) voici mon script # # # #!/bin/sh # Constantes chemin des répertoires DirTmp=/data/BckPostgres DirFinal=/data/BckDbs DirTime=/etc/scripts export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin # Constantes bases # Mettre dans le tableau le nom de la base de donnée [son_numero]=nom_base Tableau=( [1]=postgres [2]=template1 [3]=mantis [4]=dbnl51 [5]=ipplan ) nbelement=${#table...@]} #login User=postgres echo '' echo '# Debut Pré-install#' echo '' echo Mise à jour de l'heure $DirTime/time.sh echo 'Supression de la dernière sauvegarde' cd $DirFinal rm *.gz echo 'Suppression terminée' if [ -d $DirTmp ] ; then echo -e Le répertoire $DirTmp existe else echo -e Le répertoire $DirTmp n'existe pas : création de ce dernier mkdir -p $DirTmp chown -R postgres $DirTmp fi echo Nombre de bases à sauvegarder : '$NbElement' . # Dump des databases chaud echo Sauvegarde intégrale des bases for i in ${!Tableau[*]} do Base=${Tableau[$i]} su $User -c pg_dump -E='UTF8' --create -o $Base --file=$DirTmp/$Base.`date +%d-%m-%y`.sql taille=$(ls -alh $DirTmp/$Base.`date +%d-%m-%y`.sql |awk -F '{print $5}') if [ $taille = 0 ] ; then taille='ERREUR DE SAUVEGARDE' fi echo 'DUMP de la base '$Base' effectué taille : '$taille'' done echo Sauvegarde des datas uniquement for i in ${!Tableau[*]} do Base=${Array[$i]} su $User -c pg_dump -E='UTF8' -o --data-only $Base --file=$DirTmp/$Base-data.`date +%d-%m-%y`.sql taille=$(ls -alh $DirTmp/$Base-data.`date +%d-%m-%y`.sql |awk -F '{print $5}') if [ $taille = 0 ] ; then taille='ERREUR DE SAUVEGARDE' fi echo 'DUMP de la base '$Base' effectué taille : '$taille'' done echo Sauvegarde des datas uniquement avec insert for i in ${!Tableau[*]} do Base=${Array[$i]} su $User -c pg_dump -E='UTF8' --data-only --inserts $Base --file=$DirTmp/$Base-data-inser.`date +%d-%m-%y`.sql taille=$(ls -alh $DirTmp/$Base-data-inser.`date +%d-%m-%y`.sql |awk -F '{print $5}') if [ $taille = 0 ] ; then taille='ERREUR DE SAUVEGARDE' fi echo 'DUMP de la base '$Base' effectué taille : '$taille'' done echo Sauvegarde des schémas uniquement for i in ${!Tableau[*]} do Base=${Array[$i]} su $User -c pg_dump -E='UTF8' -o --schema-only $Base --file=$DirTmp/$Base-schema.`date +%d-%m-%y`.sql taille=$(ls -alh $DirTmp/$Base-schema.`date +%d-%m-%y`.sql |awk -F '{print $5}') if [ $taille = 0 ] ; then taille='ERREUR DE SAUVEGARDE' fi echo 'DUMP de la base '$Base' effectué taille : '$taille'' done #optimisation echo Optimisation des dumps sql cd $DirFinal tar -czf DBS_Dump-`date +%m-%d-%y`.tar.gz $DirTmp/* taille=$(du -sh $DirTmp | awk -F '{print $1}') echo 'Taille des dumps des bases de données : '$taille'' taille=$(ls -alh $DirFinal/DBS_Dump-`date +%m-%d-%y`.tar.gz | awk -F '{print $5}') echo 'Taille du fichier compressé : '$taille'' echo '' echo '# Fin Pré-install #' echo '' Merci de votre aide philippe -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org Archive: http://lists.debian.org/4b88d071.4030...@worm-fr.com
Script bash
Bonjour, Je cherche le moyen de rendre verbeux un script bash, j'ai rajouté l'option +x dans le sheebang mais ça ne me fait rien ? #!/bin/bash +x J'ai commencé ce script tout simple, pour me déplacer dans un répertoire : cd /chemin/du/repertoire/ou/je/veux/aller kenini quand je fais : ./monscript pwd Rien j'ai pas bougé d'un yotta ! j'ai essayé avec un ; à la fin de la ligne, rien du tout. vous avez une idée de ce que j'ai omis de faire ? -- Cerdocyon key ID 0x773B483BAC099326 signature.asc Description: Digital signature
Re: Script bash
Le lundi 08 février 2010 à 11:03 +0100, Le Cerdocyon a écrit : Bonjour, Je cherche le moyen de rendre verbeux un script bash, j'ai rajouté l'option +x dans le sheebang mais ça ne me fait rien ? #!/bin/bash +x au début de ton batch une nouvelle instance de bash est créé J'ai commencé ce script tout simple, pour me déplacer dans un répertoire : cd /chemin/du/repertoire/ou/je/veux/aller tu change de répertoire pour l'instance de bash lancé au début de ton script et non celle que tu utilise pour lancer ton script (ligne de commande) si tu rajoute pwd à la fin de ton script tu verras que le répertoire courant à bien été changé, mais quand ton script se termine tu retrouve l'environnement qui tu avais avant. kenini quand je fais : ./monscript pwd Rien j'ai pas bougé d'un yotta ! j'ai essayé avec un ; à la fin de la ligne, rien du tout. vous avez une idée de ce que j'ai omis de faire ? -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org
Re: Script bash
au début de ton batch une nouvelle instance de bash est créé Et que dois-je faire pour que ça cause bien ? je vais regarder pour le changement de repertoire. Merci -- Cerdocyon key ID 0x773B483BAC099326 signature.asc Description: Digital signature
Re: Script bash
Le lundi 08 février 2010 à 11:15 +0100, Le Cerdocyon a écrit : au début de ton batch une nouvelle instance de bash est créé Et que dois-je faire pour que ça cause bien ? Si le but est de changé le répertoire de l'interpréteur courant, il ne faut pas en lancer un autre -- (#!/bin/bash) et il ne faut pas lancer un script mais plustot utiliser les alias de commande (voir la page de manuel de bash section alias) Julien -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org
Re: Script bash
Le 08/02/2010 11:15, Le Cerdocyon a écrit : au début de ton batch une nouvelle instance de bash est créé Et que dois-je faire pour que ça cause bien ? je vais regarder pour le changement de repertoire. Merci essaye set -x juste après le #!/bin/bash -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org
Re: Script bash
Julien jul...@nura.eu writes: Le lundi 08 février 2010 à 11:15 +0100, Le Cerdocyon a écrit : au début de ton batch une nouvelle instance de bash est créé Et que dois-je faire pour que ça cause bien ? Si le but est de changé le répertoire de l'interpréteur courant, il ne faut pas en lancer un autre -- (#!/bin/bash) et il ne faut pas lancer un script mais plustot utiliser les alias de commande (voir la page de manuel de bash section alias) Ou définir une fonction dans les .bashrc: --8---cut here---start-8--- cdtmp () { cd $HOME/tmp } --8---cut here---end---8--- -- Rémi Vanicat -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org
Re: Script bash
On 2010-02-08 11:15:42 +0100, Le Cerdocyon wrote: au début de ton batch une nouvelle instance de bash est créé Et que dois-je faire pour que ça cause bien ? Écrire une fonction? Une fonction est exécutée dans le shell courant. -- Vincent Lefèvre vinc...@vinc17.net - Web: http://www.vinc17.net/ 100% accessible validated (X)HTML - Blog: http://www.vinc17.net/blog/ Work: CR INRIA - computer arithmetic / Arénaire project (LIP, ENS-Lyon) -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org
Re: Script bash
Le lundi 08 février 2010 à 11:40 +0100, Le Cerdocyon a écrit : J'aimerai récuperer un PID à chaque coup, tu as une idée de script qui fait ça ? le PID de quoi ? de l'interpréteur courant ? dans quel but ? Julien -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org
Re: Script bash
Le 08/02/10 at 11:45, Julien a ecrit: Le lundi 08 février 2010 à 11:40 +0100, Le Cerdocyon a écrit : J'aimerai récuperer un PID à chaque coup, tu as une idée de script qui fait ça ? le PID de quoi ? de l'interpréteur courant ? dans quel but ? Julien Julien, Je cherche à récuperer sur plusieurs serveur le pid d'un processus automatiquement (genre éviter de faire un top ou htop puis lire la liste et enfin tomber sur le pid) Le but, vérifier si le pid est présent, si ne l'est pas, relancer le programme. C'est pour automatiser une tache d'exploitation. à+ -- Cerdocyon key ID 0x773B483BAC099326 -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/fr/FrenchLists Pour vous DESABONNER, envoyez un message avec comme objet unsubscribe vers debian-user-french-requ...@lists.debian.org En cas de soucis, contactez EN ANGLAIS listmas...@lists.debian.org
Re: Script bash
essaye set -x juste après le #!/bin/bash Ca ne marche pas non plus C'est curieux ça ! -- Cerdocyon key ID 0x773B483BAC099326 signature.asc Description: Digital signature