WSH の VBScript で HTTP の Response Header を取得

WSHVBScript で HTTP の Response Header を取得するスクリプトを書いてみました。
エラー処理は最低限です。

sUrl = Trim(Wscript.Arguments(0))
sCap = Trim(Wscript.Arguments(1))
sSts = "-"
sLM = "-"
iRet = 0
Set oHttp = CreateObject("MSXML2.ServerXMLHTTP.6.0") 
oHttp.Open "GET", sUrl, False
oHttp.setTimeouts 30000, 60000, 30000, 30000
On Error Resume Next
oHttp.Send
iRet = Err.Number
If iRet = 0 Then
    sSts = oHttp.Status
    If sSts = "200" Then
        sLM = oHttp.getResponseHeader("Last-Modified")
    End If
End If
On Error Goto 0
Set oHttp = Nothing
sCm   = ""","""
WScript.Echo """" & Now & sCm & sCap & sCm & sSts & sCm & sLM & sCm & sUrl & sCm & iRet & """"

下のようにコマンドライン引数に URL とその説明を入れます。

cscript //Nologo .\getLM.vbs "http://www.hatena.ne.jp/images/portal/logo-portal-top.png" "ロゴ" >> .\http.csv

CCNP SWITCH 取得

ちょうど3年弱前に CCNA をとったのですが、この資格は3年ごとに更新しなければならないらしいのです。

それで、せっかく取得したので更新してみたいなと思い調べてみました。
更新するには二通りのやり方があるようです。

  • もう一度 CCNA の2科目のうち1科目を再受験し合格する。
  • CCNA の上位資格の CCNP の3科目のうち1科目を受験し合格する。

最初は CCNA 再受験コースを考えていたのですが、ネットで経験者の方の報告をみていると、 CCNP の科目で更新している方が多いようでしたので、自分もみなさんと同じく CCNP 受験コースを目指すことにしました。

とりあえず ping-t やネット上に点在する例題を暗記するまでこなし、シュミレーション対策として、テキストエディタで指がコマンドを覚えるまでひたすら打ち続ける練習をしました。
しかし、一番参考になったのは、経験者の方の報告でした。雲をつかむような何もわからない状態の中では、経験者の報告はとても心強いものでした。

量子コンピュータって何?

GoogleとNASAが共同で“量子コンピューター”研究所を設立 -INTERNET Watch

ちょっと前にこんな記事を読みました。

Googleの目的は、機械学習を進展させる可能性がある量子コンピューティングについての研究だとしている。機械学習には、数学的にNP困難と呼ばれる計算に天文学的な時間がかかる問題があり、これをより高速に解くために量子コンピューターが役立つとGoogleは考えている。

との事ですが、よく分かりません。
とりあえず、面白そうな動画がありました。


2重スリットの実験 - YouTube 

上の動画によると、「電子が観測されるまでは、『どっちの隙間を通るか通らないか』の全ての可能性を持っている」っていうとこにヒントがありそうですね。

Open ブログ: ◆ 量子コンピュータの嘘

下品になるが、プレイボーイの比喩で言おう。
20人の女がいるとする。ここで、三つのタイプがある。
一番いい女を得るのに、どの女がいいかわからないで、一つ一つ女を味見するタイプがいる。(ノイマン型)
一方、見てわかる情報(足首や口の形)から、上手に見当をつけて、ダメな19人をさっさと切り捨てて、見事に最適の女を見つけるタイプがいる。(量子コンピュータ型)
一方、一度に 20人の女を同時に処理できる精力タイプもいる。(並列CPU型)

以上の三つを、ちゃんと区別しよう。

また、人工知能が出来るかもしれないそうですが、既存のコンピュータで原理的に計算できないことは、量子コンピュータにも計算できないそうなので、量子脳理論みたいな、いかにも「不思議」って感じの思想とは違うみたいです。

Google さん達はとりあえず、実用のためというよりも (本物かどうかも含めて) 検証用にD-Wave 社量子コンピュータを入れたんじゃないかなと思いました。

CDO コンポーネントの添付ファイルは、ネット上のファイルの URL 指定もできるみたい

以前書いた、Gmail の SMTP サーバと CDO コンポーネントを使ってメール送信 - @technodoor Blog
の記事で、添付ファイルはローカルファイルを指定していましたが、どうやら、ネット上のファイルの URL を指定してもいけるようです。

AddAttachment Method

toAddress = "送信アドレス1,送信アドレス2"
fromAddress = "Gmail ユーザ名" & "@gmail.com"
passwd = "Gmail パスワード"
schemas = "http://schemas.microsoft.com/cdo/configuration/"
Set oMsg = CreateObject("CDO.Message")
oMsg.Fields.Item("urn:schemas:mailheader:X-Mailer") = "system mail"
oMsg.Fields.Update()
oMsg.From = fromAddress
oMsg.To = toAddress
oMsg.Subject = "システムからのお知らせ"
oMsg.TextBody = "こんにちは。" & vbCrLf & "現在時刻は " & Now & " です。"
oMsg.TextBodyPart.Charset = "ISO-2022-JP"
oMsg.Configuration.Fields.Item (schemas & "sendusing") = 2
oMsg.Configuration.Fields.Item (schemas & "smtpserver") = "smtp.gmail.com"
oMsg.Configuration.Fields.Item (schemas & "smtpserverport") = 465
oMsg.Configuration.Fields.Item (schemas & "smtpauthenticate") = true
oMsg.Configuration.Fields.Item (schemas & "sendusername") = fromAddress
oMsg.Configuration.Fields.Item (schemas & "sendpassword") = passwd
oMsg.Configuration.Fields.Item (schemas & "smtpusessl") = true
oMsg.AddAttachment("http://matsui.typepad.jp/photos/technodoor/twitter.gif")
oMsg.AddAttachment("http://matsui.typepad.jp/photos/technodoor/logo.gif")
oMsg.Configuration.Fields.Update
oMsg.Send
Set oMsg = Nothing

知らなくて、いちいちローカルにダウンロードしてから送信していたよ・・・

HTTP プロキシ経由での SSH 接続

外に出る手段が HTTP プロキシしかない環境から、外部に SSH したい時に使えるかもしれない方法。
でも、そのプロキシサーバが CONNECT メソッドに対応している必要があるそうです。

Squid  で試してみたところ、拍子抜けするくらい簡単につながりました。

PuTTY の設定例です。

f:id:matsui:20170427174835p:plain

HTTPプロキシ・サーバー経由でSSHクライアントを使う | 複眼中心

↑を参考にさせてもらいました。

 Tera Term の設定も載せときます。
「設定」から「プロキシ」を選びます。

f:id:matsui:20170427174856p:plain

↑はインストール時に「TTProxy」の追加が必要みたいです。

ThinkPad X40 に docomo Xi を導入

f:id:matsui:20120625230542j:plain

2006 年に中古で購入した ThinkPad X40 に、
NTT docomo の Xi L-03D を導入しました。

真剣にモバイルをしていると、USB コネクタの部分が邪魔になるので、
サンワサプライの 3D USB アダプタを利用しました。

通信モジュールを、ガムテで液晶の裏に貼り付けてみたら、
なんとなく ワイルドな気がしてきました。

 

LPIC レベル 1 取ってました

ちょっと前に Linux 資格の LPIC レベル 1 を取りました。

 この資格を取るには、101 試験と 102 試験の二つの試験をパスする必要があるのですが、101 試験では、Linux の構造とパッケージ管理、基本的なコマンドなどの問題で、102 試験は、シェルや SQL、ネットワークやセキュリティの問題が出ました。

問題の傾向も Red Hat 系と Debian 系の両方に対応しているので、どこかのディストリビューションに偏っていることもないようです。

 勉強方法としては、Ping-t というサイトを利用して問題を解きまくり、下の通称「あずき本」といわれる参考書で分からないところを勉強する、というやり方をひたすら続けました。 
問題集も買いましたが、まったく使いませんでした。 

この「あずき本」は、分かりやすさに定評があるようで、試験対策以外でも、初心者用テキストとして使えそうです。 

Linux教科書 LPICレベル1 第4版 (CD-ROM付)

Linux教科書 LPICレベル1 第4版 (CD-ROM付)

なんといっても、各コマンドのオプションを暗記するのがタイヘンでした、そして、しばらくやっていなかった SQL 文を忘れてしまうという衝撃の事実wも経験して、何とか合格できました。