Re: [CBLX] Petite interrogation Awk |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/carrefourblinux Archives
]
- To: carrefourblinux@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [CBLX] Petite interrogation Awk
- From: Didier Spaier <didier@xxxxxxxx>
- Date: Sat, 18 Jul 2020 23:07:36 +0200
- Autocrypt: addr=didier@xxxxxxxx; prefer-encrypt=mutual; keydata= xsBNBFY6fG8BCADH4Hf/OaE2MwXRFMrU/9oDd+YPqR/wkhmIv0veDio84fsWA5qMz1De7TEv dNuxIVYTznuVOd/9lpdfxQ1KV9rgD7yoBPLmjbQA1vVjB+1QylIQUV0B9AYFUsxZP32Ic2pg TS3US/WiZyx+/jS50ri4kvT9iDtIEu7WBWFr8YMOoq3oLkHI8Y7gBG0WsK9XYN09glhtI+bA jLPr/ezwEg5M3FDb4U7XFq7GcA6EEzanKMAOHdZl3lta7dv5gpgdj+38j5jPfV1cJW+J1fha 63X72xxXGs7V6J7NGpnW7SAKfTAMXsPXZwwGIuqMQs1Z89I+2ZPJPOoV8zMncTsWzHStABEB AAHNH0RpZGllciBTcGFpZXIgPGRpZGllckBzbGludC5mcj7CwH8EEwEKACkCGwMHCwkIBwMC AQYVCAIJCgsEFgIDAQIeAQIXgAUCXcBjnwUJGlHqEgAKCRDVAgLvYMA+6v/ICAC8Oa2zXOne zyuFrPtNsciJWYwWamW+g5TNaY9NPnyMRNKDi7IcP6PoDwHRI8YBgo+Z9w0qFKQ/WVSI/O6s gm7LnOX7OEHjnub4sjrr5PHcsPRjm6iJFIgGgD+waz0K5fxcc65ti3lgHLH1tkhORyiT5EFp 0VllWDQfPHw5avm9oopJv1FuPfZhSlFT6QhjD2ARmOrxfFBjELQZjDidckOYf/8Stoh+aK5F 5q69DpF+bSZzOtCht+S6LT+Im5zqMgq1Dfqb3FpnVO3MyhSLeGI2nB+OFNTBGByRFKHYRsHc VaQBjtfsr4HnC0UR2P/bDIk/oxLnIN9nHJuL6btcf9M6zsBNBFY6fG8BCACqDQKHSw0ElDkw PPpNguL0ujOyygO30xlLyfW9pWOEycHSLhLzvDTlFkvr5IxvyCDBIFBdzpkeQqh1+ZxrFliw Wyj+9/roJlIjxeAyNs2xQZ7tQM6K5xtbUs8O5YtkCCO3OegAiLgmzzgxes79Qy+V3ciKbl+v rsNu7T9ro3zZhyinci1eOCcKEtXFPQW5P4woB+6+JheN9pIiDkjojmdC+xkvDadP7kJYKp19 Itys/CbNvxEoOLsgeJhsZSmNU2QNhXkLfr7+AC99fb/c5ZDTNPRBqgLJCp+gTxn1QVJrAbq2 OP3refmSRxdA3yUDMjxEeHwDNZJL9aEtTDlTzPk5ABEBAAHCwGUEGAEKAA8CGwwFAl1EQo4F CQjq+XYACgkQ1QIC72DAPurGhAf+LKNM5AajZNNnccq3bWawqsY1P5ZtFvZLPxMbx2xsnYaM 8UPe/tGfuxp+q1ouCRKgvtefjd2eBLGXaysCA5r3Jv+hgdjPKEJut3rARhTJMaDwjKOcOTHG AhFtpsjBkVXuCBxEpNBEypyis3w4kQUCxP7nro4yzdXY7s6EbadNd8nG4B8qFt4JxnqJnZWl 97mBQFJjFXlkAM+0eAkpF+rYzL6QKCKydO2Xcz7UTSMe/blXtZUjHxyr8Nh1G+ywEbkmQP+l QhcxJYJbK+q4zNM0U64zzLRwIvVknpdEzJKiFXsydnm9VFE9tzC6a+h40du2OdhkoNDVuFSq aG2M5OmN/Q==
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/simple; d=slint.fr; s=default; t=1595102824; bh=f2koHqMObcc64Bl2qjaomCt9AWruWDs9Oyrt3ias228=; h=Subject:To:References:From:Date:In-Reply-To:From; b=k+WnZAZIjX3M/KAQucml/hzsXvrRO+s6fEYNzfJ3nXXeUtLAtEJfW5GKJA4j6vpyU FFV711bdANSmUVnvmld9XtKBLV5o0qEuPvkYr8pziHrlu+XkwLYQN3na2hMK1GoSwm /2Vmj8v5nVo9bvl9/k3iIo5gMacanRCcgUCV/u3ZeRvAFAzFDHfjF8H6WkdV3QgG5/ Z51WY4JwFdCtnpqedhEyM9f4VprdYHh8Eng/20i0AAHepoLvhmyyHKbiLw1lDPA2Yx 6Us250qgqL3AOptae9UdbnUaHZG1KQZkAexvfmtE7IL5SBnybRKJgVh8FpO96alT4z gl0lyXndskeww==
Bonsoir à toutes et à tous,
Jean-Francois, la commande à utiliser est diff y compris pour les répertoires
Pour comparer deux répertoires /a et /b de manière récursive sans comparer les fichiers entre eux:
diff -qr /a /b
Pour en savoir plus:
man diff
Didier
Le 18/07/2020 à 21:15, Jean-François Colas a écrit :
> Bonsoir Didier, Léa et tous.
>
>
> OK. Il faut que je précise que suis plus utilisateur de Windows que de Linux, mais je le dis surtout à cause de certains noms de logiciels que je vais citer.
>
>
> Je suis souvent amené à utiliser un soft appelé Winmerge qui me permet de faire des comparaisons entre le contenu de deux répertoires. Pouvant me lister, au choix, les fichiers identiques des deux côtés; ceux qui sont différents; ceux qui ne sont présents que d'un côté, ou de l'autre. Ce Winmerge est aussi capable de comparer des fichiers, mais pour le coup, étant loin d'être à l'aise avec sa façon de faire, pour ça je me rabats sur un Gnu Diff.
>
> Bon. Winmerge peut bien sûr me générer un rapport; en l'occurrence, ce qui m'intéresse ici, ce n'est que l'aspect concernant les fichiers différents. Et c'est ce rapport que je voulais travailler, pour construire un script (batch) me lançant des diffs sur chaque paire de fichiers listée, et me permettant de stocker les résultats de ces diffs, chacun dans un fichier à part.
>
> Voici les premières lignes d'un rapport Winmerge.
>
> ----------
>
> Comparer E:\dispatch\Dispatch boulot\Ascii\corortho avec E:\dispatch\corortho
> 15/07/2020 21:12:40
> Nom du fichier Répertoire Résultat de la comparaison Date mod. gauche Date mod. droite Extension
> Shells Linux et Unix par la pratique.txt Shells Linux et Unix par la pratique Les fichiers sont différents 10/01/2017 16:51:14 * 09/01/2018 16:05:58 txt
> biblio alex feuilleté.txt Les fichiers sont différents * 19/02/2020 16:40:00 19/09/2018 16:00:28 txt
> blocdiff.bat Les fichiers sont différents 16/11/2017 09:45:16 * 27/06/2019 13:48:22 bat
> (etc.)
>
> --------
>
> J'avais opté pour Awk, parce que pour tout ce qui constitue le tableau, et pour ce que je veux faire, la découpe en champs est tout à fait appropriée. En fait ce n'est que cette fichue première ligne, dont j'espérais que Awk me donne des moyens qui m'auraient échappé pour la traiter plus "à la Awk"; espérant pouvoir compter sur le mécanisme de découpe en champs quand même. L'idée pour cette première ligne, n'étant que de pouvoir en extraire les deux chemins. Tout le reste, ça va. J'approfondirai donc :la fonction gensub et ça suffira peut-être bien, mais voilà: ça m'était juste sorti de la tête.
>
> Et aussi... l'avantage indéniable de CBLX étant de ne pas être trop trop spécialisé au-delà de Linux, et d'être... en french.
>
> Merci de votre intérêt.
>
> J.-F.
>
>
> Le 18/07/2020 à 20:37, Didier Spaier a écrit :
>> Hello Jean-Francois,
>>
>> je n'ai rien compris (et awk n'est peut-être pas l'outil le plus approprié).
>>
>> Pourrais-tu donner un exemple plus concret et en dire plus sur le but et le contexte?
>>
>> Merci,
>>
>> Didier
>>
>>
>> Le 18/07/2020 à 17:55, Jean-François Colas a écrit :
>>> J'utilise parfois mais pas assez souvent Awk. Je sais qu'il a certains automatismes, mais saurait-il en faire encore plus que ce dont je me souviens à ce jour?
>>>
>>> Mon problème: j'ai une ligne dont le format est du genre:
>>>
>>> Comparer Chemin numéro 1 avec chemin2
>>> (ou l'inverse éventuellement)
>>> Comparer chemin1 avec Chemin numéro 2
>>> (ou aussi pourquoi pas)
>>>
>>> Comparer ce premier chemin avec tout un tas d'éléments constituant le chemin 2
>>> Et ce que je chercherais donc à faire, serait de pouvoir stocker dans deux variables chemin1 et chemin2, ce qui se trouve après Comparer, et ce qui se trouve après avec.
>>>
>>> Mon problème, c'est donc la variabilité de ce qui se trouve entre les mots "Comparer" et "Avec, et ce qui se trouve après le mot "Avec".
>>>
>>> Cette ligne ne comporte aucun guillemet, aucun autre séparateur que des espaces.
>>>
>>> Est-il par exemple possible d'indiquer qu'une chaîne devrait être constitué d'un ensemble de champs allant du n-ième au n+2-ième?
>>> Ou alors, pourrait-on faire une sorte de "masque" du genre: "comparer %s avec %s"
>>> qui pourrait coller après coup au contenu d'une variable préremplie?
>>> ...Ou autre?
>>
>
--
CBLX - CarrefourBLinuX MailingListe
Pour obtenir de l'aide, envoyez le sujet help à:
carrefourblinux-request@xxxxxxxxxxxxxxxxxxx
Archives:
http://listengine.tuxfamily.org/lists.tuxfamily.org/carrefourblinux
ou
http://www.mail-archive.com/carrefourblinux@xxxxxxxxxxxxxxxxxxx/