Forum Programmation.shell Utiliser la sortie d'une commande comme chaîne de recherche de awk

Posté par  . Licence CC By‑SA.
Étiquettes :
1
23
déc.
2013

Bonjour.

Je cherche à obtenir le "device file" correspondant à un chemin (sur une clé USB, en l'occurrence).

Disons que mon chemin est /media/cle/rep1/rep2/rep3/fichier. (J'ai accès à ça facilement dans Thunar via les actions personnalisées.)

Je veux :

  • extraire /media/cle
  • chercher ça dans /proc/mounts
  • en déduire /dev/sdb1 (par exemple)

Partant de /media/cle, je peux réaliser les étapes 2 et 3 avec awk :

awk '/\/media\/cle/ {print $1}' /proc/mounts

J'arrive à extraire /media/cle avec sed :

echo /media/cle/rep1/rep2/rep3/fichier | sed -e 
(…)

Forum Programmation.shell awk : imbrications de commandes

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

Bonjour à toutes et à tous :)

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

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

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

Forum Programmation.shell Problème avec awk

Posté par  .
Étiquettes :
1
24
fév.
2012

Bonjour à tous,

j'ai récupérer un programme qui crache du texte tabulé de la forme :

mot nombre mot mot ...
mot nombre mot mot ...

or les résultats qui m'intéresse ont pour valeur de nombre 83 et 99. Comme c'est un cas fréquent le concepteur du programme donne un "tips" dans la doc. Sous cette forme :

gauthier ~ 17:13 :$ son_programme /donne/en/entree | awk 'and($2, 0x0002) && and($2, 0x0040)'

Le résultat est impeccable, ca correspond exactement a ce (…)

Forum Programmation.shell Script awk : Afficher le nom du fichier en cours de traitement ?

Posté par  . Licence CC By‑SA.
Étiquettes :
1
16
juil.
2019

Bonjour,

Je suis bloqué sur un script et je ne sais pas comment m'en sortir. Je sollicite donc votre aide.

J'ai un script qui me permet d'afficher avec une mise en page des informations provenant de plusieurs CSV.

Voici le script :

    cat /var/www/cgi-bin/LPAR_MAP/*.csv | grep foo | awk -F',|;' '{print $2","$5","$6","$7}' | awk '{
    print "LPARS :" $2
    print "RAM : " $5
    print "CPU 1 : " $6
    print "CPU 2 : " $7
    }'

Ce script (…)

Forum Programmation.shell Recherche commande

Posté par  . Licence CC By‑SA.
Étiquettes :
1
21
déc.
2022

Bonjour,

J'ai ce fichier :
XVI 931376 +
XVI 933898 -
XVI 934034 +
XVI 938148 -
XVI 939279 -
XVI 939922 +
XVI 943032 +
XVI 943880 +
XVI 944603 +
XVI 946856 -

J'aimerais créer une variable qui, compte le nombre de "groupements +" de sorte à sortir :
3 (le groupe de 4 plus compte pour 1).

Je recherche sur pleins de forums mais je ne trouve rien…
Merci !

Forum Programmation.shell Remplacer une valeur dans une colonne sous condition

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

Bonjour à tous,

J'ai une liste de fichiers textes contenant des valeurs séparées par des ; . Dans ces fichiers je dois remplacer la valeur de colonne 8 pour les lignes commençant par la valeur PAR.

Pour le moment j'utilise cette commande

for i in `ls *.txt`; do cat $i | awk -i inplace -F";" '{ if($1=="PAR") {gsub("[^0-9]","3027008440109",$8);print} }'; done
Malheureusement sa marche pas vraiment, j'ai cette erreur

awk: inplace:47: avertissement : inplace_begin : modification sur place annulée pour le fichier incorrect « - »
(…)

Forum Programmation.shell Addition d'un nombre d'occurences selon une chaine de caractère

Posté par  . Licence CC By‑SA.
Étiquettes :
0
13
août
2015

Bonjour,

Je suis bloqué sur un petit script en shell. Je récupère dans un fichier txt des entrées comme ci dessous :

120 facebook.fr
32 linuxfr.org

Lorsque je lance mon script avec le cron, j'ai du coup la même chose mais plusieurs fois puisque les résultats s'ajoutent au fur et à mesure du resultat.txt :

120 facebook.fr
32 linuxfr.org
64 facebook.fr
12 linuxfr.org

Je souhaiterai donc pouvoir additionner les nombre d'occurences quand les noms de domaines sont identiques, soit au (…)

Forum Programmation.shell awk print $mavariable

Posté par  . Licence CC By‑SA.
Étiquettes :
0
18
juin
2015

Bonjour à tous,

je ne trouve pas de solution pour mettre en paramètre la commande que il se doit.
Contexte dans le répertoir /tmp nous avons des fichiers du type
XXX.TTTT.DAYLY
XXX.TTTT.WEEKLY
XXX.TTTT.MOUNTHLY
Le but et de recopier l'ensemble des fichier en remplaçant la chaîne TTTT par YYYY nous aurons comme résultat:
XXX.YYYY.DAYLY
XXX.YYYY.WEEKLY
XXX.YYYY.MOUNTHLY

A=`ls /tmp/XXX.TTTT* | cut -d. f3`
n=`ls XXX.TTTT.* | wc -l`

awk 
#mais nous ne connaissons pas
(…)

Forum Programmation.shell Modifier un fichier avec Awk à partir de données extraites d'un autre fichier

Posté par  .
Étiquettes :
0
31
août
2012

Salut !
Alors voilà, j'ai un petit problème à vous soumettre

J'ai un fichier1 avec des données:

Var1.1 Var1.2 Var1.3
Var2.1 Var2.2 Var2.3
Var3.1 Var3.2 Var3.3

Ainsi qu'un fichier2 que j'aimerais modifier à l'aide de ces données:

File2 (origine)

pattern with Var2.1
some text…

File2(modifié)

pattern with Var2.1
Here I want to add Var2.2 and Var2.3
some text

Ma première solution est d'utiliser AWK, mais pour cela, il me faut pouvoir imbriquer une commande bash dedans et d'en récupérer le resultat. (…)

Forum Linux.débutant Modification d'un fichier, variable avec awk

Posté par  . Licence CC By‑SA.
Étiquettes :
0
13
avr.
2020

Bonjour à tous,

Je voudrais modifier un associer une valeur à une variable avec awk en utilisant une autre variable (définie au début du programe). Voici un exemple simple qui illustre ce que je voudrais faire :

Pour le moment j’exécute la commande suivante :
Re_tau_fr=$(awk 'FNR==119{print 0.0029846/$43*sqrt($39/$17*$2/($1))}' $moyenne_actuelle)

Je voudrais pouvoir changer le coefficient multiplicateur facilement en début de fichier, c'est à dire faire quelque chose comme :
coeff="0.0029846"
Re_tau_fr=$(awk 'FNR==119{print $coeff/$43*sqrt($39/$17*$2/($1))}' $moyenne_actuelle)

En utilisant BEGIN j'y arrive mais (…)

Forum Programmation.shell Soustraire une liste de fichier à une autre liste

Posté par  .
Étiquettes :
0
17
avr.
2012

Bonjour,

Je suis en train d'écrire un script assez simple qui consiste à synchroniser sur mon téléphone Android des dossiers de toute natures avec rsync.

Rsync n'aime pas qu'on lui dise "prends ces fichiers là et ignore les autres", il préfère qu'on lui dise "prends tout les fichiers sauf ceux là", dans le premier cas on se retrouve avec un tas de problème, donc ce qu'il faut parvenir à faire c'est de lui donner une liste de tout les fichiers (…)

Forum Programmation.shell gawk traitement du port serie ttyS0

Posté par  . Licence CC By‑SA.
Étiquettes :
0
23
mai
2013

bonjour

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

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

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

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

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

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

Forum Programmation.shell [awk] mettre une variable sur print

Posté par  . Licence CC By‑SA.
Étiquettes :
0
10
jan.
2023

Bonjour,

j'ai besoin d'un coup de main pour solutionner mon soucis.
J'utilise cette ligne de commande.

pdfgrep --max-count 1 "Date" $fichier1 | awk '{print $9}'

elle me permet de détecter un champs sur un pdf. Par contre mon soucis :
la colonne n'est toujours pas 9, elle peut être la 10 à 12.

donc ma question :
peut-t-on mettre une variable à la place $9?

merci de votre aide

Forum Programmation.shell CSH : Remplacement de mots dans un fichier à partir d'un fichier CSV de correspondance

Posté par  . Licence CC By‑SA.
Étiquettes :
0
28
avr.
2016

Bonjour,

J'ai un fichier XML évolutif au sein duquel j'aimerais remplacer des noms de ville à partir d'identifiant contenu dans une table de correspondance. pour chaque occurence du fichier.

exemple : table de correspondance

PARIS;75000
BORDEAUX;33000

J'étais parti sur un sed mais j'ai beau creuser je ne trouve pas.

Quelqu'un peut il m'aider SVP.
A votre disposition si vous avez besoin d'informations complémentaires.

J'ai déjà la boucle

while read line
do
var1=$( echo "$line" | sed -n -E 's/.Station="(. (…)