Bienvenue sur mon blog

Le blog d’un informaticien qui se veut libre : tout un programme dans cette seule phrase !

Aujourd’hui, je suis passé sous Linux (Linux Mint en l’occurrence) sur mes ordinateurs personnels. Comme tout un chacun,  au fil de mes pérégrinations sur le Net, j’accumule des trucs et des astuces qui me servent de temps à autre, mais aussi (pour certaines) presque au quotidien. Pourquoi regrouper ces trucs et astuces ici ? Pour y accéder quand j’en ai besoin, mais aussi pour aller à l’encontre d’idées préconçues, pour montrer que, aujourd’hui, Linux n’est plus réservé à quelques-uns, geeks parmi les geeks.

Bien entendu, il n’y a pas que l’informatique. Comme tout un chacun, il m’arrive de pousser un coup de gueule, d’avoir un coup de coeur sur  certains sujet n’ayant rien à voir avec l’informatique. Là encore, mon blog se veut leur support.

Il en est de-même pour les liens que vous trouverez ici. Mon but est de les partager avec vous, mais aussi de les retrouver facilement, en faisant abstraction de l’ordinateur sur lequel je me trouve.

Je n’alimente pas mon site tous les jours. Je ne veux pas faire du verbiage et encore moins du plagiat. Dans la mesure du possible je cite mes sources. Si d’aventure je l’oublie et que vous retrouvez vos écrits, n’hésitez pas à m’envoyer un petit message, je rectifierais dans les délais les meilleurs.

Pour ce qui est de la partie « humour » que j’ajoute, n’oublions jamais que, comme disait l’autre, pour bien se moquer il faut connaître, et pour bien connaître, il faut aimer :)

Enfin, j’espère que vous aurez autant de plaisir à vous balader sur ce blog que moi j’en ai à l’alimenter.

Alain BACH

 

LiberKey et machines virtuelles…

J’utilise depuis de nombreuses années la LiberKey qui est un outil fabuleux.

Comme je suis sou Linux, j’ai Windows en machines virtuelles. La LiberKey ne peut pas être accédée depuis un lecteur réseau, or les chemins partagés sur l’hôte des machines virtuelles est, justement, considéré comme un lecteur réseau.

A ce jour, je n’avais pas de solution pour synchroniser correctement la source de ma LiberKey qui est sur mon hôte Linux et celui, opérationnel, qui est sur mes machines virtuelles.

J’ai trouvé la solution grâce à Powershell.

L’idée est d’encapsuler le lancement de la liberKey dans un script PS1. Ce script va commencer par synchroniser la LiberKey de la machine virtuelle avec la source sur l’hôte Linux. Il va ensuite lancer la LiberKey proprement dite, puis attendre la fin de l’utilisation de cette dernière avant de refaire une synchronisation dans l’autre sens, de la machine virtuelle vers l’hôte Linux. Lire la suite –»

Fonction : importe CSV Unicode

Cette fonction d’apparence toute bête me rend bien des services au quotidien. En effet, elle permet d’importer dans Powershell un fichier CSV en tenant compte de sa spécificité qu’en le codage Unicode.

function fonc-import-csv-unicode([string]$filename) 
{ 
    $tmpfile = $env:tmp+"\convertounicode.txt" 
    get-content $filename | Out-File $tmpfile -encoding unicode 
    $sortie = @(import-csv $tmpfile) 
    return $sortie 
}

Fonction : supprime un fichier s’il existe

Cette fonction toute simple vérifie l’existence d’un fichier et, le cas échéant, le supprime.

function fonc-existe-supprime([string]$fichier) 
{ 
    If (test-path $fichier) 
    { 
        remove-item $fichier 
    } 
}

Fonction : choisir un fichier sur l’ordinateur

Cette fonction permet à l’utilisateur d’aller choisir un fichier sur l’ordinateur afin de le traiter ensuite dans la suite du programme.

function fonc-choix-fichier([string]$initialDirectory, [string]$descr, [string]$Ext)
 {
 $chaine=""
 function file_choice([string]$initdir, [string]$description, [string]$extension)
 {
 $file_choice_output = ""
 $searchExt = "$description| $extension"
 [void] [Reflection.Assembly]::LoadWithPartialName( 'System.Windows.Forms' )
 $fileDialogBox = New-Object Windows.Forms.OpenFileDialog
 $fileDialogBox.ShowHelp = $true
 $fileDialogBox.initialDirectory = $initdir
 $fileDialogBox.filter = $searchExt
 $fileDialogBox.ShowDialog( )
 $fileDialogBox.filename
 return $file_choice_output
 }
 # Note : La valeur filename est la deuxieme renvoye par la fonction d'où le $logFileName[1]
 # "appel de la fonction file_choice $initialDirectory $descr $Ext"
 $file_output = file_choice $initialDirectory $descr $Ext
 # $file_choice_output
 $chaine = $file_output[1]
 return $chaine
 }

Appel de la fonction :

fonc-choix-fichier "c:\" "fichiers texte" "txt"

Simon & Garfunkel : El Condor Pasa

Image de prévisualisation YouTube

Simon & Garfunkel – The Sound of Silence

Image de prévisualisation YouTube

Simon and Garfunkel – Bridge Over Troubled Water

Image de prévisualisation YouTube

Simon & Garfunkel – Cecilia

Image de prévisualisation YouTube

Phil Collins – In the air tonight

Image de prévisualisation YouTube

Mike Oldfield – Tubular Bells

Image de prévisualisation YouTube