Skip to content

Instantly share code, notes, and snippets.


Loïc MICHEL kayasax

View GitHub Profile
kayasax / Powershell Script Template.ps1
Last active Dec 22, 2015
Template for powershell script. Makes all errors "terminating" and send mail if error occurs
View Powershell Script Template.ps1
# Templata.ps1
# author: Loic MICHEL
# date: 10/09/2013
# abstract: make all errors terminating errors and send email + raise event in case of failure
kayasax / SchedulerService.ps1
Created Sep 20, 2013
Import & export of scheduled tasks using scheduler service
View SchedulerService.ps1
# create task from its xml definition
$sch = New-Object -ComObject("Schedule.Service")
$folder =$sch.GetFolder("\subfolder")
#import .xml
Get-childItem -path $task_path -Filter *.xml | %{
kayasax / parameters.ps1
Last active Jun 14, 2017
Exemple d'usage de PARAMETER
View parameters.ps1
[CmdletBinding()] #make script react as cmdlet (-verbose etc..)
[Parameter(Position=0, Mandatory=$true,ValueFromPipeline = $true)]
kayasax / replace.ps1
Created Feb 12, 2015
replace a version number
View replace.ps1
# replace versionnumber="xxx" whith versionnumber="yyy"
(gc C:\temp\config.xml) -replace '(newversion=)".*"' ,'$1"yyy"' # if you want to save the file add |sc c:\temp\config.xml
kayasax / substring.ps1
Created Mar 19, 2015
Extraire une chaîne de caractères via regex
View substring.ps1
#exemple pour extraire une adresse IP
kayasax / array2csv.ps1
Created Apr 13, 2015
powershell Array collection to CSV
View array2csv.ps1
# instead adding an hashtable to the collection, we convert it to psobject
$prop=@{"serveur"="$computername";"nom"="$n";"programme"="$p";"arguments"="$a"; "xml"="$x"}
$col+= new-object -type pscustomobject -property $prop
#this allow us to export data to csv
$r |select serveur,nom,programme, arguments,xml |export-csv -path c:\temp\tasks.csv -notype -delimiter ';' -append
kayasax / CleanDir.ps1
Created Apr 29, 2015
Conserver les X fichiers plus récents d'un répertoire
View CleanDir.ps1
#combien d'éléments à sauvegarder ?
ls $SourceDir |sort lastwritetime -desc |select -skip $limite # | remove-item
kayasax / removeEmptyLines.ps1
Created Apr 29, 2015
Suppression de lignes vides après un split
View removeEmptyLines.ps1
# some ways to remove empty lines when splitting strings
# for example
# $text = "Video Video Audio Audio VBI VBI"
# $text.Split()
# outputs this
# Video
# Video
kayasax / parsingLines.ps1
Created Apr 29, 2015
Comment parser un fichier organisé "en lignes" plutôt qu'en "colonnes"
View parsingLines.ps1
PARSING (log) files.
when log files contains several colums on the same line we can use importfrom-csv
but how to do when log files is organized 'by lines' ?
Name: ENC1
IPv4 Address:
Link Settings: Forced, 100 Mbit, Full Duplex
Name: ENC2
kayasax / legacyapps.ps1
Created Apr 29, 2015
Lancer des exécutables DOS depuis powershell
View legacyapps.ps1
# running dos command with lengthy parameters may sometimes be difficult to run from powershell
# one easy step that may correct the problem is to call cmd.exe /c before calling the command :
# this will not work
# & c:\windows\handle.exe /accepteula .d1 > C:\upf\logs\backup\handle.txt
# this is OK
start-process -Wait -NoNewWindow cmd.exe "/c handle.exe .d1 > C:\upf\logs\backup\handle.txt"
# starting at PS V3.0 we can also use the escape operator : --% ( will stop powershell resolving variables except cmd ones like %computername% )