Contents

10日間のユーザー向けの最も有用なPowerShellコマンド

/images/02d971eb.jpg

まとめ

  • WindowsでPowerShellを使用して、タスクを自動化し、デバイスのトラブルシューティングを行い、Windows機能を拡張します。

*実行する前にスクリプトを常に検査または検証し、信頼できるコードの制限のみを緩和してください。

  • Show-Command、Get-Help、Get-Commandを使用して、PowerSgell cmdletsについて学びます。

スクリプトは、多くの場合、管理者だけがコーヒーブレイクを延長するために行うものと見なされますが、ホームユーザーもコマンドラインの自動化から利益を得ることができます。以下は、ワークロードを明るくし、問題をトラブルシューティングし、新しい機能を明らかにするためのスクリプトを作成するために使用できる10のPowerShellコマンドを紹介します。

オンラインで見つけたスクリプトを決して信用しないでください

言うまでもなく、実行する前にスクリプト(またはコードの少し)が実際に何をするかを確認する必要があります。インターネットのいたずらは、誰かが意図せずに実行する可能性があることを知って、有益な(実際には悪意のある)コードをオンラインで植えることが知られています。

そのコードがファイルを削除したり、財務情報を盗んだりするなどのことを行う場合、深刻なサイバーセキュリティリスクもあります。スクリプト内の各コマンドが何をするかを調べる必要があります。または、それが声明の混乱したごちゃごちゃである場合は、ChatGptを使用してそれらを解き、目的を発見するのに役立ちます。 PowerShellスクリプトを作成するのに役立つこともできます(Excelフォーミュラでできる方法)。

もちろん、開始する前に、WindowsデバイスでPowerShellを開くか、実行するPowerShellスクリプトを作成する必要があります。また、Lingoを知ることも役立ちます。PowerShellの用語では、CMDLETはコマンドの別の単語です(この場合、単一の特定のタスクを実行するもの)。

test-netConnectionは、接続性の問題のトラブルシューティングを支援します

/images/test-netconnection-in-windows-powershell.png

TNC略して、テストネットコネクションは、別のネットワークデバイスへの接続に関する診断情報を示しています。これは、ルーターへの接続性のトラブルシューティングに便利です(次のゲームセッションに最適な接続を取得することを確認するため)、ワイヤレスプリンター、またはNASボックスです。


tnc -computername -port 

詳細については、TNC-InformationLevelの「詳細」を実行することもできます。

get-netipconfigurationとget-netipaddressは、現在のネットワーク接続に関する有用な情報も示します。

/images/get-netipconfiguration-in-windows-powershell.png

Restart-ComputerとStop-Computerは、彼らが言うことだけをします

これらのコマンドは、彼らが言うことだけをします。一見些細なことは、ソフトウェアやドライバーを更新するスクリプトに追加するか、デバイスをリセットしてctrl+alt+del全体を不便にする必要がある場合にデスクトップに追加するのに非常に便利です。

Restart-Computer-ForceまたはStop-Computer-Forceを実行して、モニターから生活がすばやく排出されるのを見てください。

Get-Help、Get-Command、Get Memberを備えたcmdletsをdemystifyします

/images/get-help-and-get-command-in-windows-powershell.png

指先でドキュメンテーション!ほとんどのPowerShell CMDLETSは、Get-Helpコマンドを使用して説明できます。これにより、コマンドに関する情報が表示されます。 Get-Help CommandNameまたはGet-Help-Examplesを実行して、いくつかの例を表示します。

Get-CommandとGet-Memberについては、Get-Helpを使用してチェックアウトしてみませんか?

show-commandでpowershellを学びます

/images/show-command-in-powershell.png

ショーコマンドを他のコマンドの前に置くと、利用可能なすべてのパラメーターを使用したグラフィカルインターフェイスを受け取り、そのインターフェイスからコマンドを実行することもできます。単独で実行すると、利用可能なすべてのコマンドが表示されます。コマンドラインインターフェイスから少し脱出しないでください。

は、ストップサービスとスタートサービスを備えたスタックプリントジョブをクリアします

WindowsとPrintersは天国で作られた試合ではありませんでした。また、Gurusでさえ、単純な問題さえもトラブルシューティングをしようとして無数の時間を費やしてきました。

PowerShellはここで役立ちます。スクリプト内のストップサービスとスタートサービスを使用して、プリンタースプーラー(印刷ジョブを管理するWindowsサービス)を停止するだけで、remove-Item(この場合はファイルを削除しました)と並行して、印刷を止めていることを妨げるものは何でもクリアすることを願っています。


Stop-Service spooler  

Remove-Item -recurse -force C:\Windows\System32\Spool\PRINTERS*  

Start-Service spooler

remove-Itemコマンドのその再クルースフラグに注意してください。これが、すべてのコマンドを常に慎重に読み取り、すべてのパスが正しいことを確認することが重要である理由です。間違ったフォルダーで再帰削除を実行すると、システムが破壊されたり、貴重なデータを削除する可能性があるためです。

set-executionPolicyで独自のPowerShellスクリプトを実行します

PowerShellスクリプトを実行しようとすると、自分で書いたスクリプトでも、既知の開発者が暗号化するスクリプトのみを許可するデフォルトの実行ポリシーによってブロックされる可能性が高いです。 Set-ExecutionPolicyはこれを覆し、Set-ExecutionPolicyバイパスプロセスを実行すると、現在のセッションのスクリプトを実行できます。彼らが信頼できることを確認してください。

sapi.spvoiceでコンピューターの心を話してください

sapi.spvoiceは、コマンドラインにテキストをスピーチにもたらします!電子メール通知を読み取るなど、有用なことをしたり、PCに失敗した印刷ジョブを読み取ってもらいたり、キュービクルの仲間を悩ませたりすることでイライラさせます。それをInvoke-RestMethodと組み合わせて、無作為の役に立たない事実をつかんで読んでください。


( New-Object-com SAPI.SpVoice ).speak(( Invoke-RestMethod-Uri 'https://uselessfacts.jsph.pl/api/v2/facts/random' ).text )

コピー項目でファイルをコピーします

コピーアイテムでシンプルなファイルコピーを作成するための超単純な構文!


Copy-Item

この記事の「厳密にPowershell」から、基本的なコピータスク以上のものにRobocopyを推奨するように迂回します。


robocopy

 /MIR /R:5

get-childitemを使用してフォルダー(およびサブフォルダー)の完全な内容を表示

get-childitemは、すべてのファイルをフォルダー内に取得し、再帰的に実行できます。たとえば、現在のフォルダー内のファイルをサイズごとにリストする方法は次のとおりです。


Get-ChildItem -Recurse | Sort-Object Length -Descending | Select-Object FullName, Length -First 10

Get-Processでパフォーマンスを監視します

/images/get-process-in-windows-powershell.png

タスクマネージャーを開いたままにしたくない場合は、Windows PCが何をしているのかを簡単に見るためにGet-Processをいつでも実行できます。


Get-Process | Sort CPU -Descending | Select -First 5 Name,Id,CPU,WS

上記のPowerShellコマンドは、パイプ(このように見える垂直バー文字)を使用して、あるコマンドから別のコマンドに出力を渡し、それらを一緒にチェーンさせます。

スクリプトの旅を始めたばかりです

OK、これらのユースケースのほとんどは非常に些細なものですが、スクリプトの力は、オペレーティングシステムのユーザーインターフェイスでまだカバーされていない独自の問題を解決することです。

特定のコマンドが通常のユーザーに最も役立つか、あなたがやりたいことをすることができるコマンドを見つけることができるコマンドはそれほど少ない(あなたが働くために利用できるコマンドを見るための良い出発点として再びショーコマンドに叫ぶ)。タスクスケジューラと組み合わせることで、毎日のシステムメンテナンスまたはバックアップタスクをスクリプト化してから、便利な時間に実行するように設定できます。

デバイスの範囲を超えて自動化する場合、IFTTはモバイルデバイスで動作し、多くのWebサービスとも対話することができます。

*÷ソースリンク:

Excelフォーミュラ、Windowsデバイスのオープンパワーシェル、 test-netconnection ]( https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.management/restart-computer?view=powershell-7.5)、 get-helpget-commandget-membershow-commandStop-servicestart-serviceremove-itemset-executionpolicysapi.spvoice)、 Invoke-restmethodcopy-item、robocopy、 get-childitemget-process、タスクスケジューラと組み合わせて、IFTTはモバイルデバイスで動作します。