Greboca  

Suport technique et veille technologique

Aujourd’hui, les grandes entreprises et administrations publiques hésitent entre continuer à utiliser des logiciels propriétaires ou basculer vers les Logiciels Libres. Pourtant, la plupart des logiciels libres sont capables de bien traiter les données issues des logiciels propriétaire, et parfois avec une meilleur compatibilité.

C’est alors la barrière de la prise en main qui fait peur, et pourtant...

Les logiciels libres

L’aspect « Logiciel Libre » permet une évolution rapide et une plus grande participation des utilisateurs. Les aides et tutoriels foisonnent sur Internet ou sont directement inclus dans le logiciel lui-même.

Enfin, les concepteurs sont plus proches des utilisateurs, ce qui rend les logiciels libres plus agréable à utiliser et conviviaux.

Grâce à la disponibilité des logiciels libres, vous trouverez facilement des services de support techniques et la licence n’est plus un frein à l’utilisation de ces logiciels par votre personnel.

Notre support technique concerne essentiellement les logiciels libres, que ce soit sous forme de services ponctuels ou de tutoriels.

Planet Libre  -  One More Blog : Trier et supprimer les doublons d’un fichier sous Linux

 -  Novembre 2010 - 

TerminalDans le cadre du débuggage d’un programme C, j’ai été amené à écrire dans un fichier plus de 5 millions de valeurs numériques dans le but de les trier ensuite et de supprimer les doublons (« Ah le mec qui debug avec des printf()! » – Ouai ben des fois y’a que ça d’efficace!) . Une fois ce fichier généré, soit environ 40Mo, je me suis posé la question de l’outil à utiliser pour effectuer les opérations dont j’avais besoin. J’ai pensé à plusieurs choses :

  • Ouvrir le fichier avec LibreOffice Calc mais il se trouve que celui-ci est limité à un peu plus de 100 000 lignes et ne permet donc pas d’exploiter mon fichier.
  • Insérer en base de données les valeurs et effectuer les opérations en SQL. Problème : Il faut une base de données à disposition d’une part et si c’est le cas, MySQL via PhpMyAdmin refuse d’importer le fichier car il est, semble-t-il, trop volumineux.
  • Écrire un programme qui lit le fichier, stocke toutes la valeurs dans un tableau et effectue les opérations nécessaires. Seulement voilà, on n’a pas forcément l’envie ni le temps d’écrire un programme pour un traitement aussi commun.

Bref, c’est là qu’intervient Linux et la puissance des outils qui lui sont associés. Dans un terminal :

$ sort -g mon_fichier | uniq > mon_nouveau_fichier

C’est aussi simple que ça! Et le temps d’exécution est très raisonnable :

$ time sort -g ntest | uniq > uniq_sorted_test 
 
real	0m8.013s
user	1m0.326s
sys	0m0.403s

Quelques brèves explications :

  • sort -g permet le tri en prenant l’ordre des valeurs numériques et pas l’ordre alphanumérique classique. Sans cette option, on aurait un résultat de ce type : 1, 10, 100, 1000, 11, 110, 1110, …
  • uniq permet de supprimer les doublons et de renvoyer les valeurs uniques.

Certes ce n’est pas quelque chose dont on a besoin tous les jours mais ça permet de montrer encore une fois la diversité et la puissance des outils fournis sous Linux. Et ça encourage à chercher du côté de ces petits utilitaires avant de tenter des choses improbables ou de réinventer la roue…

Manuel de sort
Manuel de uniq

Gravatar de One More Blog
Original post of One More Blog.
Votez pour ce billet sur Planet Libre.

par One More Blog

Planet Libre

Le Planet sur Linux et les Logiciels Libres

Comète : L’infrastructure technique de Framaspace - Fiat Tux

 -  17 janvier - 

— PermalienOriginal post of Comète.Votez pour ce billet sur Planet Libre.Articles similairesComète : Architecture technique Nextcloud de (...)


Comète : Frigate NVR

 -  Septembre 2024 - 

— PermalienOriginal post of Comète.Votez pour ce billet sur Planet Libre.Articles similairesNicolargo : Streaming depuis la Raspberry Camera (...)


Comète : Configurer un serveur mail sous OpenSMTPD - Vinishor's blog

 -  Août 2024 - 

— PermalienOriginal post of Comète.Votez pour ce billet sur Planet Libre.Articles similairesComète : Ray's Notebook: Computing — OpenSMTPD (...)


Comète : Vinishor sur DN42 - Partie 1 : création et déclaration d'un AS - Vinishor's blog

 -  Août 2024 - 

"DN42 est un réseau décentralisé qui est ouvert à tout le monde et qui a pour objectif de reproduire à petite échelle le fonctionnement d'Internet. Il (...)


Simon Vieille : Gestionnaire de fonds d'écrans pour i3

 -  Août 2024 - 

i3 est tiling window manager pour Linux. Je l'utilise depuis de nombreuses années et j'en suis extrêmement satisfait.Puisqu'il se cantonne à (...)