適材適所

WindowsやPowerShellやネットワーク、IBMなどのシステム系の話など気になったことも載せているブログです。

PowerShell

【PowerShell】文字列をコマンドとして実行する【Invoke-Expression】

文字列をコマンドとして実行したい!そんなときはInvoke-Expressionコマンドレットが使えます。 Invoke-Expressionコマンドレットとは コマンド本体だけでなくパラメタもちゃんと解釈してくれるのが便利 過去のコマンド履歴を全て実行する 終わりに 参考 Inv…

ZabbixのAPIをPowerShellで扱う

参考 PowerShell でweb APIを使うときはInvoke-RestMethodコマンドレット PowerShellでZabbix APIを投げる version情報の確認 トークンの取得 ホストの取得 ホストの情報を取得 ホスト名で指定する templateの一覧を取得する ひとこと PowerShellからZabbix…

【PowerShell】プリンタの設定を変更する【Set-PrintConfiguration】

プリンタの両面印刷・片面印刷などの印刷設定を変更したいときはPowerShellが使えますのでその紹介です。 検証した環境 Get-PrintConfiguration コマンドレットで印刷設定を確認できる Set-PrintConfigurationコマンドレットで印刷設定を変更できる できない…

【PowerShell】CSVにダブルクォーテーションを簡単に付ける

検証した環境 ExcelのワークシートをCSV形式を指定して保存することができるが・・・ PowerShellを経由してCSVの項目をダブルクォーテーションで囲む PowerShell 7.2以降ならもう少し柔軟に設定可能 参考 ExcelでCSV形式で保存したファイルをダブルクォーテ…

【PowerShell】Outlookの受信トレイのメールを取得する

はじめに 環境 OutlookをPowerShellから操作するためには Outlook関連のオブジェクトについて 受信トレイのデータをPowerShellから覗いてみる 受信トレイ内のメールタイトルを一覧にする 受信トレイのメールの中で添付ファイルがあるものだけを一覧にする 受…

【PowerShell】サクッとプリンターを追加・削除する

Add-PrinterとAdd-PrinterPortでサクッと追加する ドライバーがわからないときは プリンターを削除したいときは ComputerNameを指定すればリモートのPCもできる カラーや両面印刷も制御できる 終わりに PCのローカルにプリンタをサクッと追加したいときにはP…

【PowerShell】リモートでWindowsのバージョンを確認する

検証環境 PC PowerShell Buildnumberとバージョンについて WMIを使う Get-WmiObjectコマンドレットを使う 注意 余談 参考 Windows Updateがしっかりあたっているか、 管理者がリモートでちゃちゃっと確認したいときなどに使えるかもしれません。 ※ドメイン環…

【PowerShell】容量の大きなファイルを調べる

最近PCが重い・・・。 そんなときはPCの掃除が必要ですね。 ルンバのように自動で掃除してもらうことはできませんが、 (できますが、ルンバよりも洗浄力が強いのでやらない方がいいです) PowerShellを使ってディスク領域を占領している方々を調べることがで…

はてなブログAPI(はてなブログAtomPub)を使って記事を取得する【PowerShell】

はてなブログAPI(はてなブログAtomPub)とPowerShellを使ってブログの記事を取得するコードの紹介です。 はてなブログAtomPubとは? はてなブログAPIの使い方 APIの認証 はてなブログAPIを使うための準備 コード 使用上の注意 終わりに 参考 はてなブログAtom…

【PowerShell】空フォルダを削除する【Get-ChildItem】

空フォルダを探して、削除する 空フォルダを探すときはGet-ChildItemコマンドレットを使う フォルダの中のファイルやフォルダ数を得る 指定したフォルダ以下の空フォルダを再帰的に検索する 指定したフォルダ以下の空フォルダを再帰的に検索する Remove-Item…

【PowerShell】System.Windows.Automationでウィンドウを最小化・最大化する簡単なサンプル

検証した環境 UIAutomationを使ったウィンドウの最小化・最大化のサンプル UIAutomationのドキュメント 終わりに 例えば、ウィンドウをクリックしたり、ウィンドウに表示されている文字列を取得して、処理を分岐させたり・・・。 System.Windows.Automation(…

【PowerShell】色々な条件でファイルを検索する【Get-ChildItem】

検証した環境 Get-ChildItemコマンドレットとWhere-Objectコマンドレットを組み合わせる 1年以上更新されていないファイルを調べる 5年以上アクセスされていないファイルを調べる System.DateTimeオブジェクトで自由に日にちを設定する 抽出したファイルをサ…

【PowerShell】テンポラリファイル・一時ファイルを使う【New-TemporaryFile】

検証した環境 New-TemporaryFileコマンドレット [System.IO.Path]::GetTempFileName() New-TemporaryFileコマンドレットと[System.IO.Path]::GetTempFileName()の注意点 一時ファイルが作成される場所について $env:TEMP [System.IO.Path]::GetTempPath() 終…

【PowerShell】文字列を置換する方法 4選

System.StringのReplaceメソッド 構文 注意点 -replace系の演算子 大文字小文字の区別 正規表現が使える Visual BasicのReplaceメソッド 他の方法との違い JavaScriptのreplaceメソッド 他の方法との違い ラッパー関数を作ってみた 終わりに プログラミング…

VBAのSendKeys,System.Windows.FormsのSendWaitなどが反応しないときに読む記事

注意 プロローグ Windowsでキーボードが押されたとき何が起こるの? メッセージって何? メッセージのログを可視化することができるSpy++ Spy++でメッセージログを可視化してみる VBAのSendKeysやSystem.Windows.Forms#SendWaitのメッセージ 【結論】PostMes…

【PowerShell】Excelブックを開かずにシート名の一覧を作成する

PowerShellでExcelのシート名の一覧を作成する関数 ひとこと 使い方 単発で使う場合 パイプラインで使う場合 注意 終わりに Excelブックを開かずにシート名を取得することができるPowerShellの自作関数を紹介しようと思います。 xlsmやxlsxといったOffice Op…

PowerShellでNotesメールを送信するサンプル

PowerShellでNotesメールを送るサンプル 使い方の例 メールをドラフトに保存する メールをそのまま送信する ファイルを添付する 簡単な解説や改良ポイント 終わりに PowerShellを使ってNotesメールを送信するサンプルです。 関数化してありますのでPoewrShel…

PowerShellでPersonal Communicationsの操作を自動化してプチRPAする【マクロ】

検証した環境 PCOMMをプチRPAする 終わりに PowerShellを使ってPersonal Communications(以下PCOMM)の操作を自動化するサンプルを紹介します。 Windowsに標準で入っているPoweShellとPCOMMの標準機能を使うので、RPAソフト無しで実行することができます。毎…

【PowerShell】半角文字の一覧を作成したり半角全角判定する

数字から文字を作る 半角文字のリストを作る 16進と10進と半角文字の対比表を作る 半角文字のリストを使って半角全角判定に使う GetByteCountを使って判定した方が早い 終わりに PowerShellで半角文字のリストを作ったり、半角全角文字の判定をするときの方…

【PowerShell】メモ帳が暴れ回る最高のスクリプト

検証した環境 ソース 終わりに いつもまじめな話題だと飽きてしまうのでたまには肩の力を抜いたプログラムでも。 土曜日は面白いプログラムで疲れを癒しましょう。 UIAutomationとPowerShellを組み合わせて、メモ帳を所せましと暴れさせてみました。 目がち…

Windowsの設定画面を速攻で開いてディスプレイの配置を速攻で変える【PowerShell,cmd】

環境 start ms-settings:displayを使う テレワークで役立ちそうな他の設定画面を速攻で開く 終わりに 参考 テレワークの普及もあり、パソコン作業では、ご家庭でもディスプレイを2つ、3つ使う人も増えたのではないでしょうか。 かくいう私も公私ともにデュ…

【PowerShell】デスクトップのファイル一覧を取得する【Get-ChildItemワンライナー】

コマンド ファイルとフォルダの一覧をコンソール画面に出力する 情報を絞ってコンソール画面に出力する ファイルに絞ってコンソール画面に出力する フォルダに絞ってコンソール画面に出力する ファイルに出力する 再帰的にファイルに出力する 項目を絞ってフ…

Notesカレンダーを取得する【PowerShell】

検証した環境 Notesカレンダーを取得する関数 コードの補足 【先に謝っておきます】注意! 終わりに HCL Notes(旧Lotus Notes、IBM Notes)からカレンダーの情報を取得する方法です。 需要があるかわかりませんが、せっかく作ったのでエントリに残しておきま…

ファイルのフルパスを拡張子を除いて取得する【PowerShell】

ファイルのディレクトリ名を取得する ファイルから拡張子を除いた名前を取得する 【結論】ディレクトリと拡張子を除いたファイル名を組み合わせる 終わりに PowerShellで作業していると、ファイルの保存形式を変更することがよくあります。多くの場合、フォ…

【PowerShell小ネタ】エクスプローラーやブラウザを速攻で起動する【ランチャー的に使う】

Start-Processコマンドレット Cドライブを開く ブラウザを開く Excelを開く メモ帳を開く コントロールパネルを開く 終わりに 私はいつもPowerShellのコンソール画面を開きながら仕事をしています。そして大体のことはPowerShell上で完結させたいと思い、常…

【Clear-Variable】変数をクリアしたいよーというときに読む記事【PowerShell】

Clear-Variableとは? どんな動きをするか 自分が定義した変数だけ消去したい 終わりに PowerShellではとっても簡単に変数を定義することができます。 あまりに簡単なのでつい変数を定義して過ぎてしまうことありませんか? そしてそれらを一発でクリアした…

【Remove-Variable】変数を削除したいよーというときに読む記事【PowerShell】

Remove-Variableとは? どんな動きをするか 自分が定義した変数だけ消去したい 終わりに PowerShellではとっても簡単に変数を定義することができます。 あまりに簡単なのでつい変数を定義して過ぎてしまうことありませんか? そして、それらを跡形もなく消し…

【Group-Object】自分のパソコンのExcelファイルの拡張子の割合を調べてみる【PowerShell小ネタ】

【結果】xlsmのExcelファイルが多かった Group-Objectコマンドレットを使ったワンライナー 終わりに ExcelでどのくらいVBA使って開発したんだろう・・・? 自分のパソコンの中にどのくらいのExcelファイルがあって、そのうちどのくらいがVBAを使っているんだ…

大量の画像ファイルのファイル形式(png,jpgなど)を一括で変換する【PowerShell】

1つの画像ファイルだけならペイントでもいけるよ PowerShellで.netのSystem.Drawingのお力を借りる 変換できる拡張子一覧 終わりに こちらの記事(【スクレイピング】ウェブの画像を一括ダウンロードする【PowerShell】 - 適材適所)で画像を大量にダウンロー…

【スクレイピング】ウェブの画像を一括ダウンロードする【PowerShell】

Invoke-WebRequestコマンドレットを使う 関数にしてみる 注意点 終わりに [参考]VBAで同じことをやった記事 このサイトの画像、癒される~。 自分のパソコンに保存しておきたい!! でもこんなにたくさんの画像を一個一個ダウンロードするの大変だ・・・ そ…