System Administration Using PowerShell
PowerShellは、Microsoftより提供される強力なタスク自動化と構成管理フレームワークであり、コマンドラインシェルとWindows .NET Frameworkからなる。PowerShellを使用することで、タスクを自動化し、システムを管理し、他のプログラムとのインタラクションを行うことができます。
このチュートリアルでは、PowerShellを使用したシステムアドミニストレーションの基本について学習します。これには、以下のようなトピックが含まれます。
- PowerShellのイントロダクション
- ユーザー アカウントの作成と管理
- ローカルとネットワーク リソースの管理
- PowerShellでのスクリプティング
PowerShellの始め方
PowerShellを始めるには、以下の手順に従ってください。
- PowerShellを開く: Windows 10では、「Start メニュー」で「PowerShell」を検索して開きます。Windows 7では、「Search バー」で「PowerShell」を検索して開きます。
- 基本構文: PowerShellの基本構文は、他のスクリプト言語と似ています。コマンドは、動詞、対象、必要なパラメーターに始まります。
powershell ping www.example.com -n 53. ヘルプとドキュメント: PowerShell コマンドとオプションについて学習するには、「Get-Help」 cmdlet を使用します。powershell Get-Help -Name Get-ChildItem
ユーザー アカウントの作成と管理
新しいユーザーの作成
PowerShell を使用して新しいユーザー アカウントを作成するには、「New-LocalUser」 cmdlet を使用します。
New-LocalUser -Name "JohnDoe" -Password (ConvertTo-SecureString "P@ssw0rd!" -AsPlainText -Force)
全ユーザーのリスト
「Get-WmiObject」 cmdlet を使用して、ローカル マシン上の全ユーザー アカウントを一覧表示します。
Get-WmiObject -Class Win32_UserAccount | Format-Table -AutoSize
ローカルとネットワーク リソースの管理
ファイル システム パーミッションの変更
「icacls」 cmdlet を使用して、ファイルやフォルダーのパーミッションを変更します。
icacls "C:\Example\Path" /setowner "JohnDoe"
ドライブ レターキー マップ
「New-PSDrive」 cmdlet を使用してドライブ レターキーをマップします。
New-PSDrive -Name "X" -Root "\\network\share" -ErrorAction SilentlyContinue
PowerShellでのスクリプティング
###.Simple スクリプトの作成
現在の日時を出力する簡単なスクリプトを作成します。
# ファイル "hello.ps1" を作成します
$filePath = "C:\Scripts\hello.ps1"
# ファイル内容を設定します
$fileContent = "@Echo Off`rnn`r" + (Get-Date).ToString()
# ファイル内容をファイルに書き込みます
[io.file]::WriteAllText($filePath, $fileContent)
# スクリプトを実行します
& $filePath
変数と条件文の使用
ユーザー インプットを取得し、その応答に基づいて決断するより複雑なスクリプトを作成します。
# ユーザー インプットを取得します
$choice = Read-Host "Do you want to (A)ttend or (B)uy? "
# if 文を使用して決断を下す
if ($choice -eq "A") {
Write-Host "You've decided to attend!"
} elseif ($choice -eq "B") {
Write-Host "You've decided to buy!"
} else {
Write-Host "Invalid choice. Try again."
}
ループの使用
10 から 1 にカウントダウンするスクリプトを作成します。
# 始まりの数を設定します
$number = 10
# while ループを使用してカウントダウン
while ($number -gt 0) {
Write-Host $number
$number--
}
結論
このチュートリアルでは、PowerShell を使用したシステム アドミニストレーションの基本について学習しました。ユーザー アカウントの作成と管理、ローカルとネットワーク リソースの管理、PowerShellでのスクリプティングについて学習しました。
PowerShell は、タスクを自動化し、システムを管理し、他のプログラムとのインタラクションを行うための強力なツールです。練習と患者によって、PowerShell を使用したシステム アドミニストレーションに精通することができます。