Sometimes, when I demonstrate the ease and strength of PowerShell to a customer, I need to quickly generate some fake files en directory structure… also those files have to be from different sizes. For this, I’ve created the following script:
function New-DemoData ($Path)
{
# Usage: New-DemoData “D:\Company”
Push-Location
1..10 | % { Set-Location -Path (New-Item -ItemType directory -path "$path\$_").fullname -ErrorAction SilentlyContinue
for ( $i=1; $i -le (Get-Random -Minimum 10 -Maximum 200); $i++ )
{
fsutil file createnew ("File" + $i + ".txt") (Get-Random -Minimum 1024 -Maximum 819200)
}
}
Pop-Location
}
This script will create 10 folders (named 1-10) at the target path (provided by the parameter) and create a random number of *.txt files (between 10 and 200) in each directory, each file between 1KB and 800KB in size.