Saya ingin dapat dengan mudah membiarkan pengguna membuat profil default untuk PowerShell untuk mengesampingkan beberapa pengaturan, dan berakhir dengan satu-liner berikut (beberapa pernyataan ya, tetapi dapat disisipkan ke dalam PowerShell dan dieksekusi sekaligus, yang merupakan tujuan utama ):
cls; [string]$filePath = $profile; [string]$fileContents = '<our standard settings>'; if(!(Test-Path $filePath)){md -Force ([System.IO.Path]::GetDirectoryName($filePath)) | Out-Null; $fileContents | sc $filePath; Write-Host 'File created!'; } else { Write-Warning 'File already exists!' };
Untuk keterbacaan, inilah cara saya melakukannya dalam file .ps1 sebagai gantinya:
cls; # Clear console to better notice the results
[string]$filePath = $profile; # Declared as string, to allow the use of texts without plings and still not fail.
[string]$fileContents = '<our standard settings>'; # Statements can now be written on individual lines, instead of semicolon separated.
if(!(Test-Path $filePath)) {
New-Item -Force ([System.IO.Path]::GetDirectoryName($filePath)) | Out-Null; # Ignore output of creating directory
$fileContents | Set-Content $filePath; # Creates a new file with the input
Write-Host 'File created!';
}
else {
Write-Warning "File already exists! To remove the file, run the command: Remove-Item $filePath";
};