続いてGmailにアクセスしてみる
Gmailはスマートフォンに通知が来るし、ウェブブラウザで開いても使えるのだが、curlであれば未読メールを調べるのも容易にできる。なお、curlでGmailにアクセスするなら、事前に「アプリパスワード」を作って置くと、Googleアカウントのパスワードを使わずに済み、コマンドが外部に万が一漏れたとしても、簡単に無効にできる。コマンドとしては、
curl.exe -u ユーザー名@gmail.com:パスワード "imaps://imap.gmail.com:993" -X "STATUS INBOX (UNSEEN)"
※ ユーザー名、パスワードには各自のものを入れる。以下同様
とすると、未読のメール数を表示できる。コマンド出力の「(UNSEEN 」の後ろに表示されるのが未読のメール数だ。メールを読むには、それぞれのUIDを表示させ、UIDを指定してメールを取得する。UIDの取得は、
curl.exe -u ユーザー名@gmail.com:パスワード "imaps://imap.gmail.com:993/INBOX" -X "SEARCH UNSEEN"
とすればよい。IMAPに関しては、ここで説明しないが、これでINBOX内の未読メールを示すUIDがスペースで区切って表示される。Powershellなら、-splitでこれを分割できる。
(curl.exe -s -u ユーザー名@gmail.com:パスワード imaps://imap.gmail.com:993/INBOX -X "SEARCH UNSEEN") -split ' ' | Select-Object -Skip 2
ASCII.jpからのメールを検索するなら、
curl.exe -s -u ユーザー名@gmail.com:パスワード imaps://imap.gmail.com:993/INBOX -X "SEARCH FROM "ASCII.jp""
とする。

差出人をASCII.jpで検索して、得られたUID(17695)を使ってメールを表示させてみた。なお、ASCII.jpからのメールは、Base64でエンコードされていたのでnkfには-mBオプションが必要だった。このあたりはメールの形式に依存する
このメールを見たい場合、ASCII.jpからの場合、Base64でエンコードされているので、
curl.exe -s -u ユーザー名@gmail.com:パスワード "imaps://imap.gmail.com:993/INBOX;UID=17695/;section=Text" | nkf -mB -s
※番号には、前のコマンドで取得したUIDを入れる
とする。ただし、ここでは、nkfコマンドでBase64エンコード(-mB)を行い、出力をシフトJIS(-s)に変換している。
curlでファイルをダウンロード
crulは、Webページを取得するのにも利用できるが、あらかじめURLがわかっているファイルならhtml以外もダウンロードが可能だ。たとえば、PowerToysの最新版は以下のコマンドでダウンロード可能だ。-sオプションを付けないと、途中経過を表示してくれる。
curl.exe -OL https://github.com/microsoft/PowerToys/releases/download/v0.19.2/PowerToysSetup-0.19.2-x64.msi
URLがわかっていないと使えないが、逆に固定してURLであれば、簡単にダウンロードできる。
cURLは、インターネットプロトコルに慣れていれば、簡単にさまざまなプロトコルを発行でき、ちょっとした用途に利用できる。ここでは説明しなかったが、WebHookのトリガーとすることも可能で、たとえばIFTTTのトリガーとしても利用できる。コマンドラインから起動できるため、スクリプトに組み込むこともできる。ちょっと使って、コマンドに慣れておくと、いずれ役立つはずだ。

この連載の記事
-
第475回
PC
Windowsのコマンドラインの補完機能について解説 -
第474回
PC
Windowsでのコマンドラインのヒストリ機能 -
第473回
PC
Windowsは内部的にどうやってインターネットへの接続状態を確認している? -
第472回
PC
WindowsのエラーをMicrosoftに送信するテレメトリ機能を理解する -
第471回
PC
Windowsのコマンドラインでエイリアスを使う -
第470回
PC
Windows用のパッケージマネージャー「Winget」 プレビュー版で機能が充実してきた -
第469回
PC
Windows Updateの27年 悪役だった頃から改良が進んで、徐々に目立たない存在に -
第468回
PC
2025年のWindowsどうなる!? Windows Insider Programの状況をあらためて見る -
第467回
PC
Copilot+ PCのNPUでカメラを処理する「Windows Studio Effects」 その内容や効果は? -
第466回
PC
PowerToysの最近の新機能には、複数アプリを指定位置に起動する「ワークスペース」や新規作成のカスタマイズがある -
第465回
PC
WindowsのPowerShellからBluetoothデバイスを調べる - この連載の一覧へ