トップ 履歴 一覧 カテゴリ ソース 検索 ヘルプ RSS ログイン

WinPS/Tips

INDEX

Windows PowerShell Tips

Windows PowerShell Tips

 ウインドウタイトル変更

コマンドプロンプトでの TITLE コマンドの様に、コンソール ウインド のタイトルを設定する。

[System.Console]::Title = "新しいタイトル"

 tail -f

Get-Content -Path "ファイルパス" -wait -tail 10
gc "ファイルパス" -wait -tail 10

 touch

空ファイルを作成する

ni "ファイルパス"
New-Item -ItemType file -Path "ファイルパス"

ファイルの日付を変更する

(Get-Item "ファイルパス").LastWriteTime = (Get-Date)
(Get-Item "ファイルパス").LastWriteTime = "2021/01/01 12:34:56"

  デスクトップにショートカットを作成

REM %INSTDIR%  インストールディレクトリ(ワークディレクトリ)
REM %EXECNAME% 実行ファイル名
REM %LINKNAME% ショートカット名
powershell -Command $wsh=New-Object -ComObject WScript.Shell;$lnk=$wsh.CreateShortcut(${Home}+'\Desktop\%LINKNAME%.lnk');$lnk.TargetPath='%INSTDIR%\%EXECNAME%';$lnk.WorkingDirectory='%INSTDIR%';$lnk.Save();

  ファイルのダウンロード

powershell -Command $wc=New-Object System.Net.WebClient;$wc.DownloadFile('ダウンロードURL', '保存ファイル');

Windows PowerShell Tips

 特定のポートの疎通確認

Test-NetConnection コマンドレット(エイリアス TNC)で、ICMP または TCPの任意のポートでの疎通確認ができる。Windows Server 2012 R2 では、“Test-Connection”となる模様。

Test-NetConnection [[-ComputerName] <String>] [-InformationLevel {Quiet | Detailed}] [-Port <Int32>] [-TraceRoute]

ComputerName を指定しなかった場合は、マイクロソフト社が用意したインターネットに接続できるかの確認用ホスト internetbeacon.msedge.net が対象になる。

Port でポート番号を指定すると TCP のポートで確認となり、未指定の場合は ICMP (いわゆる ping )での確認になる。

InformationLevel で Quiet を指定すると TcpTestSucceeded の結果 True/False のみが表示される。

TraceRoute を指定すると、tracert (traceroute) コマンドの様に、対象ホストまでの経路が表示される。

 自己署名証明書

New-SelfSignedCertificate コマンドレットで長期有効期間のオレオレ証明書(自己署名証明書)を作成。また、作成した証明書をpfxファイルにエクスポートする。

$thisCert = New-SelfSignedCertificate -CertStoreLocation "cert:\LocalMachine\My" `
  -FriendlyName "myserver" `
  -Subject "myserver.mynetwork.local" -DnsName "myserver.mynetwork.local","192.0.2.1" `
  -KeyAlgorithm RSA -KeyLength 2048 -HashAlgorithm SHA256 -KeyExportPolicy Exportable `
  -NotAfter (Get-Date).AddYears(10)

[String]$thisCertPath = Join-Path -Path 'cert:\LocalMachine\My\' -ChildPath "$($thisCert.Thumbprint)"
$thisCertPwd = ConvertTo-SecureString -String "cert password" -Force -AsPlainText
Export-PfxCertificate -Cert $thisCertPath -FilePath 'ThisServerCert.pfx' -Password $thisCertPwd

カレントディレクトリに ThisServerCert.pfx と言うファイルでエクスポートされる。また、作成された証明書は、ローカルコンピューターの証明書マネージャー (certlm.msc) の「証明書 - ローカルコンピュータ」-「個人」-「証明書」内にも保存される。

New-SelfSignedCertificate コマンドレットは、Windows Server 2012 だとダメ? 2016 では作成できる。

最終更新時間:2022年11月27日 21時17分01秒 指摘や意見などあればSandBoxのBBSへ。