火星と六日月

20170103_Moon-Mars2017/1/3 18:21 JST、Canon EOS Kiss Digital N ( ISO 1600、0.8 s)、3 BEACH DIGITAL 60E 600mm F12

20170103_Moon-Mars2017/1/3 18:32 JST、Canon EOS Kiss Digital N ( ISO 1600、1/50 s)、3 BEACH DIGITAL 60E 600mm F12

昨日は月が金星に接近、今日は火星に接近です。左が月齢5.2で旧暦12月6日の月、右下の点が火星。月の模様がわかるようにすると、火星が暗くなってしまいました。加減が難しいですね。

(2017/1/3)

金星と三日月

20170102-Moon-Venus2017/1/2 18:43 JST、Canon EOS Kiss Digital N ( ISO 1600、1 s)、3 BEACH DIGITAL 60E 600mm F12

20170102-Moon-Venus2017/1/2 18:47 JST、Canon EOS Kiss Digital N ( ISO 1600、1/100 s)、3 BEACH DIGITAL 60E 600mm F12

左下が金星、右上が月。天文年鑑によると、「18時19分 月が金星の北1°54′ 」で、「月齢4.2(21時)」。 2017年1月2日は旧暦12月5日なので、三日月というより五日月というべきでしょうか。

(2017/1/2)

PowerShellの動作がWindows 10で若干変更

Windows 8.1 から 10 にアップグレードして約2週間、ほとんどそのままの環境で使えています。支障が出たのが自作のファイル バックアップ スクリプトで、PowerShell から robocopy.exe を呼び出すときにエラーになりました。Windows 8.1 の PowerShell までは、バッドノウハウの一種なのでしょうが経験的に、外部プログラムに引数を渡すときに空白区切りの文字列にすれば動いていたのでした。

古いスクリプトの引数の渡し方(文字列による独自手法)は、こんな感じ:

$prms = """C:\org\documents""" + " " + """D:\bak\documents""" + " " + "/S" + " " + "/XD ""cache"" ""cache2""";
cmd /c robocopy $prms;

Windows 10 の PowerShell で動くように書きなおした現在のスクリプトは、こんな感じ:

$prms = ( """C:\org\documents""", """D:\bak\documents""", "/S", "/XD", """cache""", """cache2""" );
robocopy $prms;

配列に外部プログラムへの引数を入れて、そのまま渡しています。新しい方も、経験的に動くという手法ですが、多少は正統的な感じがしませんか?

ところで、PowerShell のバージョンですが、Windows 8.1 では、

PS C:\> $PSVersionTable

Name Value
---- -----
PSVersion 4.0
WSManStackVersion 3.0
SerializationVersion 1.1.0.1
CLRVersion 4.0.30319.34209
BuildVersion 6.3.9600.17400
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0}
PSRemotingProtocolVersion 2.2

Windows 10 では、

PS C:> $PSVersionTable

Name Value
---- -----
PSVersion 5.0.10240.16384
WSManStackVersion 3.0
SerializationVersion 1.1.0.1
CLRVersion 4.0.30319.42000
BuildVersion 10.0.10240.16384
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
PSRemotingProtocolVersion 2.3

となっていました。つまり、Windows 8.1 は PowerShell 4.0 で、Windows 10 は PowerShell 5.0 ということになります。スクリプトが動かなくなったということは、どこかが、微妙に異なっているのですね。

(2015/9/1)