Creating hard and soft links using PowerShell

Windows 10 (and Powershell 5.0 in general) allows you to create symbolic links via the New-Item cmdlet. Usage: New-Item -Path C:\LinkDir -ItemType SymbolicLink -Value F:\RealDir Or in your profile: function make-link ($target, $link) { New-Item -Path $link -ItemType SymbolicLink -Value $target } Turn on Developer Mode to not require admin privileges when making links with … Read more

How to split long commands over multiple lines in PowerShell

Trailing backtick character, i.e., &”C:\Program Files\IIS\Microsoft Web Deploy\msdeploy.exe” ` -verb:sync ` -source:contentPath=”c:\workspace\xxx\master\Build\_PublishedWebsites\xxx.Web” ` -dest:contentPath=”c:\websites\xxx\wwwroot,computerName=192.168.1.1,username=administrator,password=xxx” White space matters. The required format is Space`Enter.

Echo equivalent in PowerShell for script testing

There are several ways: Write-Host: Write directly to the console, not included in function/cmdlet output. Allows foreground and background colour to be set. Write-Debug: Write directly to the console, if $DebugPreference set to Continue or Stop. Write-Verbose: Write directly to the console, if $VerbosePreference set to Continue or Stop. The latter is intended for extra … Read more

Loop through files in a directory using PowerShell

Give this a try: Get-ChildItem “C:\Users\gerhardl\Documents\My Received Files” -Filter *.log | Foreach-Object { $content = Get-Content $_.FullName #filter and save content to the original file $content | Where-Object {$_ -match ‘step[49]’} | Set-Content $_.FullName #filter and save content to a new file $content | Where-Object {$_ -match ‘step[49]’} | Set-Content ($_.BaseName + ‘_out.log’) }