このページの本文へ

前へ 1 2 次へ

Windows Info 第234回

Windows 10で標準で用意されるようになったcurlを使ってみる

2020年07月26日 10時00分更新

文● 塩田紳二 編集● ASCII

  • この記事をはてなブックマークに追加
  • 本文印刷

続いてGmailにアクセスしてみる

 Gmailはスマートフォンに通知が来るし、ウェブブラウザで開いても使えるのだが、curlであれば未読メールを調べるのも容易にできる。なお、curlでGmailにアクセスするなら、事前に「アプリパスワード」を作って置くと、Googleアカウントのパスワードを使わずに済み、コマンドが外部に万が一漏れたとしても、簡単に無効にできる。コマンドとしては、

GmailをIMAPでアクセスしてみる。このときには、Gmailアカウントでアプリパスワードを使っておくといい

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でこれを分割できる。

PowerShellだとUIDを分離する処理などが簡単になる

(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オプションを付けないと、途中経過を表示してくれる。

URLがわかっているなら、curl.exeで直接ダウンロードすることも可能。同じURLで公開されるプログラムなら、定期的にcurl.exeでアクセスして最新版を入手するといった操作もできる

curl.exe -OL https://github.com/microsoft/PowerToys/releases/download/v0.19.2/PowerToysSetup-0.19.2-x64.msi

 URLがわかっていないと使えないが、逆に固定してURLであれば、簡単にダウンロードできる。

 cURLは、インターネットプロトコルに慣れていれば、簡単にさまざまなプロトコルを発行でき、ちょっとした用途に利用できる。ここでは説明しなかったが、WebHookのトリガーとすることも可能で、たとえばIFTTTのトリガーとしても利用できる。コマンドラインから起動できるため、スクリプトに組み込むこともできる。ちょっと使って、コマンドに慣れておくと、いずれ役立つはずだ。

前へ 1 2 次へ

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

ASCII.jpメール デジタルMac/iPodマガジン