Summary
This is my 2nd version of SharePoint Population Script with a few minor changes.
- Removed the Hosts file and host header creation to simplify the process.
- The new script will only create a single DB.
- A new Web Application using the server host name over a different port is now allowed.
- A Modern Team Site will be created.
What is looks like
Here is an example of running the script:


How many Sites should be created?: 2 How many Lists should be created?: 5 How many Items in each list?: 10 How many Documents should be created?: 5 Specify the full URL of the new SharePoint Site, without http://. Example: contoso, contoso.local or www.contoso.com: spwfe Enter your SQL Server Name: sql Name of the new Content DB: wss_content_Test_db2 Enter the SP Managed Account. Example: contoso\spadmin: contoso\spservice Enter a name for the new Web App: WebApp Test2 What port number do you want to use?: 6000 Enter a name for the new AppPool: WebApp-Test2-AppPool Is this a 2010 Farm Y/N?: N The new Web Application spwfe is being created. Please stand by... The new Content Database wss_content_Test_db2 is being created. Please stand by... The new Root Site http://spwfe:6000 is being created. Please stand by... Url CompatibilityLevel --- ------------------ http://spwfe:6000 15 Creating document: /Shared Documents/TestDocument1.csv ... Creating document: /Shared Documents/TestDocument2.csv ... Creating document: /Shared Documents/TestDocument3.csv ... Creating document: /Shared Documents/TestDocument4.csv ... Creating document: /Shared Documents/TestDocument5.csv ... Guid : aa53a958-10f6-4d99-95a5-00c1c369be00 #################################### List 1 created in http://spwfe:6000 #################################### Item: 1 created in list: 1 ############################## Item: 2 created in list: 1 ############################## Item: 3 created in list: 1 ############################## Item: 4 created in list: 1 ############################## Item: 5 created in list: 1 ############################## Item: 6 created in list: 1 ############################## Item: 7 created in list: 1 ############################## Item: 8 created in list: 1 ############################## Item: 9 created in list: 1 ############################## Item: 10 created in list: 1 ############################## Guid : 7ad3241e-3d9a-4a5b-b81f-d66fd458ef5e #################################### List 2 created in http://spwfe:6000 #################################### Item: 1 created in list: 2 ############################## Item: 2 created in list: 2 ############################## Item: 3 created in list: 2 ############################## Item: 4 created in list: 2 ############################## Item: 5 created in list: 2 ############################## Item: 6 created in list: 2 ############################## Item: 7 created in list: 2 ############################## Item: 8 created in list: 2 ############################## Item: 9 created in list: 2 ############################## Item: 10 created in list: 2 ############################## Guid : b033583e-bd9b-49a0-9eb3-63c40f843582 #################################### List 3 created in http://spwfe:6000 #################################### Item: 1 created in list: 3 ############################## Item: 2 created in list: 3 ############################## Item: 3 created in list: 3 ############################## Item: 4 created in list: 3 ############################## Item: 5 created in list: 3 ############################## Item: 6 created in list: 3 ############################## Item: 7 created in list: 3 ############################## Item: 8 created in list: 3 ############################## Item: 9 created in list: 3 ############################## Item: 10 created in list: 3 ############################## Guid : a5da8fb0-a7c6-4f1e-ba8d-79cf79b73044 #################################### List 4 created in http://spwfe:6000 #################################### Item: 1 created in list: 4 ############################## Item: 2 created in list: 4 ############################## Item: 3 created in list: 4 ############################## Item: 4 created in list: 4 ############################## Item: 5 created in list: 4 ############################## Item: 6 created in list: 4 ############################## Item: 7 created in list: 4 ############################## Item: 8 created in list: 4 ############################## Item: 9 created in list: 4 ############################## Item: 10 created in list: 4 ############################## Guid : 8f2468cb-107f-44a8-872b-6a49f925ba72 #################################### List 5 created in http://spwfe:6000 #################################### Item: 1 created in list: 5 ############################## Item: 2 created in list: 5 ############################## Item: 3 created in list: 5 ############################## Item: 4 created in list: 5 ############################## Item: 5 created in list: 5 ############################## Item: 6 created in list: 5 ############################## Item: 7 created in list: 5 ############################## Item: 8 created in list: 5 ############################## Item: 9 created in list: 5 ############################## Item: 10 created in list: 5 ############################## #################### Creating Sub Site 1 #################### Guid : 59247c47-36d5-402f-9f55-53009b7e3677 ######################################## List 1 created in http://spwfe:6000/1 ######################################## Item: 1 created in list: 1 ################################ Item: 2 created in list: 1 ################################ Item: 3 created in list: 1 ################################ Item: 4 created in list: 1 ################################ Item: 5 created in list: 1 ################################ Item: 6 created in list: 1 ################################ Item: 7 created in list: 1 ################################ Item: 8 created in list: 1 ################################ Item: 9 created in list: 1 ################################ Item: 10 created in list: 1 ################################ Guid : b2176570-ed99-4d0b-a1cf-4cdb54762141 ######################################## List 2 created in http://spwfe:6000/1 ######################################## Item: 1 created in list: 2 ################################ Item: 2 created in list: 2 ################################ Item: 3 created in list: 2 ################################ Item: 4 created in list: 2 ################################ Item: 5 created in list: 2 ################################ Item: 6 created in list: 2 ################################ Item: 7 created in list: 2 ################################ Item: 8 created in list: 2 ################################ Item: 9 created in list: 2 ################################ Item: 10 created in list: 2 ################################ Guid : 0b271e12-7fb0-48e3-82a2-dcaa7c628df5 ######################################## List 3 created in http://spwfe:6000/1 ######################################## Item: 1 created in list: 3 ################################ Item: 2 created in list: 3 ################################ Item: 3 created in list: 3 ################################ Item: 4 created in list: 3 ################################ Item: 5 created in list: 3 ################################ Item: 6 created in list: 3 ################################ Item: 7 created in list: 3 ################################ Item: 8 created in list: 3 ################################ Item: 9 created in list: 3 ################################ Item: 10 created in list: 3 ################################ Guid : 65b36498-b429-405a-a86f-9e38be56eb5c ######################################## List 4 created in http://spwfe:6000/1 ######################################## Item: 1 created in list: 4 ################################ Item: 2 created in list: 4 ################################ Item: 3 created in list: 4 ################################ Item: 4 created in list: 4 ################################ Item: 5 created in list: 4 ################################ Item: 6 created in list: 4 ################################ Item: 7 created in list: 4 ################################ Item: 8 created in list: 4 ################################ Item: 9 created in list: 4 ################################ Item: 10 created in list: 4 ################################ Guid : 17b22a0e-aaa9-47b5-9d6f-f702110d9620 ######################################## List 5 created in http://spwfe:6000/1 ######################################## Item: 1 created in list: 5 ################################ Item: 2 created in list: 5 ################################ Item: 3 created in list: 5 ################################ Item: 4 created in list: 5 ################################ Item: 5 created in list: 5 ################################ Item: 6 created in list: 5 ################################ Item: 7 created in list: 5 ################################ Item: 8 created in list: 5 ################################ Item: 9 created in list: 5 ################################ Item: 10 created in list: 5 ################################ #################### Creating Sub Site 2 #################### Creating document: /2/Shared Documents/TestDocument1.csv ... Creating document: /2/Shared Documents/TestDocument2.csv ... Creating document: /2/Shared Documents/TestDocument3.csv ... Creating document: /2/Shared Documents/TestDocument4.csv ... Creating document: /2/Shared Documents/TestDocument5.csv ... Guid : 9b5e80ef-ccde-42af-a5d6-e2365e79dfcf ######################################## List 1 created in http://spwfe:6000/2 ######################################## Item: 1 created in list: 1 ################################ Item: 2 created in list: 1 ################################ Item: 3 created in list: 1 ################################ Item: 4 created in list: 1 ################################ Item: 5 created in list: 1 ################################ Item: 6 created in list: 1 ################################ Item: 7 created in list: 1 ################################ Item: 8 created in list: 1 ################################ Item: 9 created in list: 1 ################################ Item: 10 created in list: 1 ################################ Guid : 34cc51c3-cccd-49b6-b252-9fe1fc5c6c3c ######################################## List 2 created in http://spwfe:6000/2 ######################################## Item: 1 created in list: 2 ################################ Item: 2 created in list: 2 ################################ Item: 3 created in list: 2 ################################ Item: 4 created in list: 2 ################################ Item: 5 created in list: 2 ################################ Item: 6 created in list: 2 ################################ Item: 7 created in list: 2 ################################ Item: 8 created in list: 2 ################################ Item: 9 created in list: 2 ################################ Item: 10 created in list: 2 ################################ Guid : b1facba1-93ff-44da-9e7f-a0d3e81d118f ######################################## List 3 created in http://spwfe:6000/2 ######################################## Item: 1 created in list: 3 ################################ Item: 2 created in list: 3 ################################ Item: 3 created in list: 3 ################################ Item: 4 created in list: 3 ################################ Item: 5 created in list: 3 ################################ Item: 6 created in list: 3 ################################ Item: 7 created in list: 3 ################################ Item: 8 created in list: 3 ################################ Item: 9 created in list: 3 ################################ Item: 10 created in list: 3 ################################ Guid : 747d479d-fbec-4e4c-94d1-7ef34f0ee6b1 ######################################## List 4 created in http://spwfe:6000/2 ######################################## Item: 1 created in list: 4 ################################ Item: 2 created in list: 4 ################################ Item: 3 created in list: 4 ################################ Item: 4 created in list: 4 ################################ Item: 5 created in list: 4 ################################ Item: 6 created in list: 4 ################################ Item: 7 created in list: 4 ################################ Item: 8 created in list: 4 ################################ Item: 9 created in list: 4 ################################ Item: 10 created in list: 4 ################################ Guid : 0ffd5646-710c-4d84-818f-8a4a4c8f36cc ######################################## List 5 created in http://spwfe:6000/2 ######################################## Item: 1 created in list: 5 ################################ Item: 2 created in list: 5 ################################ Item: 3 created in list: 5 ################################ Item: 4 created in list: 5 ################################ Item: 5 created in list: 5 ################################ Item: 6 created in list: 5 ################################ Item: 7 created in list: 5 ################################ Item: 8 created in list: 5 ################################ Item: 9 created in list: 5 ################################ Item: 10 created in list: 5 ################################ ########################################## Your Site population script has completed! ##########################################

The Script
# Load Microsoft.SharePoint.PowerShell
Add-PSSnapin Microsoft.SharePoint.Powershell -ea 0
#Script Parameters
$sitecount = (Read-Host "How many Sites should be created?")
$listcount = (Read-Host "How many Lists should be created?")
$itemcount = (Read-Host "How many Items in each list?")
$doccount = (Read-Host "How many Documents should be created?")
$url = (Read-Host "Specify the full URL of the new SharePoint Site, without http://. Example: contoso, contoso.local or www.contoso.com")
$sqlsvr = (Read-Host "Enter your SQL Server Name")
$sqldb = (Read-Host "Name of the new Content DB")
$siteowner = (Read-Host "Enter the SP Managed Account. Example: contoso\spadmin")
$sitename = (Read-Host "Enter a name for the new Web App")
$port = (Read-Host "What port number do you want to use?")
$apppool = (Read-Host "Enter a name for the new AppPool")
$is2010 = (Read-Host "Is this a 2010 Farm Y/N?")
#Adding 2010 capability
if ($is2010 -eq "Y"){
$docLibraryName = "Shared Documents"
}
if ($is2010 -eq "N"){
$docLibraryName = "Documents"
}
#Static Settings
$sourceDocumentPath = "$env:TEMP\temp\TestDocument.csv"
$newFilenamePrefix = "TestDocument"
$newFilenameExtension = ".csv"
$hostsfile = "$env:windir\System32\drivers\etc\hosts"
$spaccount = (Get-SPManagedAccount $siteowner)
$user2 = whoami
##################################
#Root WEB Creation and Population#
##################################
#Create the new web app
Write-Host "The new Web Application $url is being created. Please stand by..." -ForegroundColor Green
$site = "http://" + $url + ":" + $port
$webapp = New-SPWebApplication -Name $sitename -URL $site -ApplicationPool $apppool -ApplicationPoolAccount $spaccount -DatabaseServer $sqlsvr -DatabaseName $sqldb
#Create a new Content Database
Write-Host "The new Content Database $sqldb is being created. Please stand by..." -ForegroundColor Yellow
#Create Root Site
Write-Host "The new Root Site $site is being created. Please stand by..." -ForegroundColor Yellow
$SiteTemplate = "STS#3" #Modern Team Site
$Language = 1033
New-SPSite -Url $site -OwnerAlias $siteowner -SecondaryOwnerAlias $user2 -Template $SiteTemplate -Language $Language -ContentDatabase $sqldb
##################################
#Population Root Web#
##################################
#Test file creation
#make a new folder if it does not exist
$TARGETDIR = "$env:TEMP\temp"
if(!(Test-Path -Path $env:TEMP\temp)){
New-Item -ItemType directory -Path $TARGETDIR
}
dir | export-csv "$env:TEMP\temp\TestDocument.csv"
#defining WEB
$web = Get-SPWeb $site
#Create Documents
$docLibrary = $web.Lists[$docLibraryName]
$docLibraryUrl = $docLibrary.RootFolder.ServerRelativeUrl
$folderPathWithinDocLibrary = ""
$uploadfolder = $web.getfolder($docLibraryUrl + $folderPathWithinDocLibrary)
#Open file
$file = get-item $sourceDocumentPath
$fileStream = ([System.IO.FileInfo] (Get-Item $file.FullName)).OpenRead()
#Starting loop create docs in Root Library
for($d=1; $d -le $doccount; $d++)
{
$newFilePath = $docLibraryUrl + $folderPathWithinDocLibrary + "/" + $newFilenamePrefix+$d+$newFilenameExtension
write-host "Creating document: $newFilePath ..." -ForegroundColor Yellow
$spFile = $uploadfolder.Files.Add($newFilePath, [System.IO.Stream]$fileStream, $true)
}
#Start Loop for List creation based on $listcount in ROOT Library
for($l=1; $l -le $listcount; $l++)
#Create the Lists
{
$ListTemplate = $web.ListTemplates["Custom List"]
$web.Lists.Add("List $l","List $l",$listTemplate)
Write-Host "####################################" -ForegroundColor Green
write-host "List $l created in $site" -ForegroundColor Green
Write-Host "####################################" -ForegroundColor Green
# While creating lists put new items in it based on the $itemcount
if ($l -le $listcount )
{
#Start Loop for List Item creation in ROOT Library
for ($i=1; $i -le $itemcount; $i++)
{
#Create List Item
$list = $web.Lists["List $l"]
$newItem = $list.AddItem()
$newItem["Title"] = "Item $i"
$newItem.Update()
write-host "Item: $i created in list: $l" -ForegroundColor Yellow
Write-Host "##############################" -ForegroundColor Yellow
}}}
#################################
#Sub WEB Creation and Population#
#################################
#Start Loop for site creation
for($s=1; $s -le $sitecount ; $s++)
{
$SiteUrl = ""
$SiteUrl = $Site + "/"
$SiteUrl = $SiteUrl += $s
#Create Webs based on $sitecount
Write-Host "####################" -ForegroundColor Yellow
Write-Host "Creating Sub Site $s" -ForegroundColor Yellow
Write-Host "####################" -ForegroundColor Yellow
New-SPWeb $SiteUrl -Template $SiteTemplate -Name $s -UseParentTopNav -Language $Language
$web = Get-SPWeb $SiteUrl
#Create Documents
$docLibrary = $web.Lists[$docLibraryName]
$docLibraryUrl = $docLibrary.RootFolder.ServerRelativeUrl
$folderPathWithinDocLibrary = ""
$uploadfolder = $web.getfolder($docLibraryUrl + $folderPathWithinDocLibrary)
#Open file
$file = get-item $sourceDocumentPath
$fileStream = ([System.IO.FileInfo] (Get-Item $file.FullName)).OpenRead()
#Starting loop to create docs in Library
for($d=1; $d -le $doccount; $d++)
{
$newFilePath = $docLibraryUrl + $folderPathWithinDocLibrary + "/" + $newFilenamePrefix+$d+$newFilenameExtension
write-host "Creating document: $newFilePath ..." -ForegroundColor Yellow
$spFile = $uploadfolder.Files.Add($newFilePath, [System.IO.Stream]$fileStream, $true)
}
#Start Loop for List creation based on $listcount
for($l=1; $l -le $listcount; $l++)
#Create the Lists
{
$ListTemplate = $web.ListTemplates["Custom List"]
$web.Lists.Add("List $l","List $l",$listTemplate)
Write-Host "########################################" -ForegroundColor Green
write-host "List $l created in $SiteUrl" -ForegroundColor Green
Write-Host "########################################" -ForegroundColor Green
#Populate list items based on the $itemcount
if ($l -le $listcount )
{
#Start Loop for List Item creation
for ($i=1; $i -le $itemcount; $i++)
{
#Create List Item
$list = $web.Lists["List $l"]
$newItem = $list.AddItem()
$newItem["Title"] = "Item $i"
$newItem.Update()
write-host "Item: $i created in list: $l" -ForegroundColor Yellow
Write-Host "################################" -ForegroundColor Yellow
}}}}
#Close file stream
$fileStream.Close()
#Dispose web
$web.Dispose()
Write-Host "##########################################" -ForegroundColor Green
write-host "Your Site population script has completed!" -ForegroundColor Green
Write-Host "##########################################" -ForegroundColor Green