メア・オブ・イーストタウン

U-NEXTで視聴。主演のケイト・ウィンスレットが渋いくて良い。タイタニックのヒロインで有名だけど、中年になってありのままの姿をさらけ出すことによってメア・シーハン刑事役に説得力がでてきてる(なんせおばあちゃん役だし)。

サスペンスという割に人間関係中心のドラマで、もの凄い謎があったり、大事件が勃発するわけじゃないけど、雰囲気が良くて引き込まれる。

ミッドサマー

話題のホラー映画(?)ということで、Amazonプライムで視聴。

アメリカの大学生グループが、留学生の故郷のスウェーデンの夏至祭へと招かれ、恐ろしいことに巻き込まれる。大学生らが悲惨なことに巻き込まれる運命にあるのは最初からみえみえななので、驚きはない。真夏の明るい場所で怖いことが起こるという対比が新鮮なのか?

関連作品にウィッカーマン(旧・新あり)という映画があるらしいのでこちらも見たい。

七人のイヴ

ある日突然月が7つに分裂。無数の隕石が地表に降り、人類は滅亡を避けられない。各国政府は国際宇宙ステーション(ISS)を中心とした方舟計画を推進していく。

前半は現実世界と同程度の技術水準でどうやって方舟計画を推進していくかというところが読みどころ。準備が整っていないなか、力業で泥臭く居住可能なスペースを増やしていく方法が描写されるのが興味深い、途中おきまりの人vs人のゴタゴタが勃発したのは残念だったけど後半につながる布石としてはいたしかたないのか。イーロン・マスク的な実業家が登場するのも楽しい。

(以下若干ネタバレ)

後半は7人から人類復興後の世界。未来世界は宇宙建築関連のテクノロジーは進んでいるが情報技術はそこまででもない。レッド/ブルーの種族が入り交じった混沌とした勢力争いが繰り広げられて、ニール・スティーヴンスンだと思った。

ソプラノズ

途中までアマプラでみて最後はU-NEXTで。長かった。高評価ドラマだが、ブレイキングバッドのように特に盛り上がる部分はなく比較的淡々とすすんで終了。葬式・結婚式がやたら多い日常系ドラマってことか。

macOSでsshコマンド実行時に環境変数を設定する方法

S 20210604 181019

macOSにsshで接続して「ssh リモートホスト コマンド」を実行しようとしたところ「command not found」と表示されて、実行することができませんでした。

もちろん普通にsshで接続してインタラクティブシェルを起動すれば、コマンドでも何でも普通に実行できるのですが、sshで直接コマンドを実行すると.zshrcが読み込まれず、PATHやその他環境変数を設定することができないようなのです。

このエラーが発生して、毎回調べ直しているような気がしたので、まとめてみました。

zshの場合.zshenvに記述する

結論から書くとzshを使っている場合.zshrcや.zprofileではなく、.zshenvに記述すると「ssh リモートホスト コマンド」でも環境変数を評価してくれる模様です。

例えばPATHに「/opt/local/bin」を追加するには、以下のように.zshrcに記述します。

export PATH=/opt/local/bin::$PATH

もちろん、PATH以外の環境変数を記述しても有効となります。

.bashrcや.bash_profileに相当する.zshrcや.zprofileをいくら変更しても有効ではないので忘れないようにしたいと思います。

マニアックな金属製のしおり「ブックダーツ」を購入

IMG 7694D

知る人ぞ知る金属製のしおり「ブックダーツ」を購入しました。

Amazonの商品説明によると、小さくて軽い金属(色によって違い、ステンレス、ブロンズ、真鍮)でできていて、矢じりの形に似ていることから「BOOKDARTS」と名付けられたとのこと。オレゴン州フッドリバーという田舎町で家族経営の小規模な工場で製造され、1992年の発売当初より変わらないデザインでつくられているそうです。

本のしおり用としてだけでなく手帳やガイドッブック、雑誌等のマーキング用として文具好きに愛用されているアイテムとされています。

金属製の缶に大量に入っているタイプ(50個とか)もありますが、今回はおためしということで、3種の素材が混ざっているマルチ18個入りを選んでみました。

ブックマークとして

真鍮製の金色のブックダーツを拡大して撮影してみました。

IMG 7695

とがっている先端部分から紙に差し込んで使用します。

IMG 7696

実際に手帳にはさんでみたところです(裏側です)。折れ曲がりがありますが、それほど高さはないので、このままページを閉じたとしてもほとんど気になりません。そのかわり薄い紙でも1〜2枚ぐらいしかはさめないの、でクリップ代わりに使うのは厳しいと思います。

手帳につける付箋のインデックスのかわりならば十分に使えると思います。

本当に便利なアイテムかどうか実際に使ってみないとわかりづらいアイテムだと思いますので、少なめのパックを購入して試してみることをおすすめします。

【シェル】一筋縄ではいかない文字列の返却

Pexels sora shimazaki 5935794

関数の戻り値を文字列で返す…。

ごく当たり前の処理だけど、シェルスクリプト(bash)では簡単に書けない。returnで返却できるのは0から255の整数値だけという制限があるからだ。

function hello {
  return 1
}
hello
echo $?

これを解決するためには、関数で標準出力しそれを変数へ格納する方法が有効。引数付きで関数を呼び出し、戻り値を変数に格納するサンプルが掲載されている。

makeName()
{
    echo "$fileName.$1.log"
}


echo -n "Enter fileName:"
read fileName

name1=$(makeName "type1")
name2=$(makeName "type2")

echo $name1
echo $name2

その他、戻り値を格納する変数を渡し、関数側でevalして値を設定するというような方法も掲載されているが、とりあえず上の方法で十分そう。

MySQLのデータベースサイズをダンプ前に取得する

S 20210516 153816

mysqldumpを実行する際、進捗状況を「pv」で出力したいならば、データベースのサイズが事前に分かっていると便利。

調べて見たところ以下のようなSQLを実行すれば良いことがわかった

テーブル毎のサイズを取得する場合:

SELECT
  TABLE_SCHEMA,
  TABLE_NAME,
  DATA_LENGTH / POWER(1024,1) Data_KB,
  DATA_LENGTH / POWER(1024,2) Data_MB,
  DATA_LENGTH / POWER(1024,3) Data_GB
FROM information_schema.tables WHERE table_schema NOT IN ('information_schema','performance_schema','mysql') ORDER BY DATA_LENGTH;

データベース全体のサイズを取得する場合:

SELECT
    Data_BB / POWER(1024,1) Data_KB,
    Data_BB / POWER(1024,2) Data_MB,
    Data_BB / POWER(1024,3) Data_GB
FROM (SELECT SUM(data_length) Data_BB FROM information_schema.tables
WHERE table_schema NOT IN ('information_schema','performance_schema','mysql')) A;

実行すると例えば以下のような出力が得られる(KB単位、MB単位、GB単位)。

$ mysql < size_database.sql
Data_KB	Data_MB	Data_GB
39195247.68261719	38276.60906505585	37.3795010400936

実際はこのサイズを取得するシェル関数を作って「pv -s データベースサイズ」として実行すればよい。続きは次回。

自宅サーバーからの脱却

Bandwidth close up computer connection 1148820

自宅サーバーに対する依存をできるだけ下げようとしています。

浸水・地震などで物理的に自宅のサーバーが破壊される可能性がかなり(?)ある事を考えると、自宅サーバーでいろいろサービスを運用するよりも、VPSなりで運用したほうが安全に思えてきます。

ただしその場合、アクセス制御をどのように行うかが悩ましい問題です。自宅サーバーの場合、LAN内からのアクセスを許可するといったざっくりした設定でも十分だと思うのですが、インターネット上のサーバーで運用するとなるとそれなりにしっかりしたアクセス制御を行いたいです。

理想的には、自分以外の誰かが特定のWebページにアクセスしたらそのタイミングでメール通知するといった処理を行いたいです。

調べるとswatchというツールでできそうなので明日はその辺を調べていこうと思います。

WordPressのテーマ設定完了

Pexels photo 1103970

『三体II:黒暗森林』上巻読了し、下巻に突入。三体人が非常に人間くさいところが気になりますが、とても面白いことは変わりないです。

WordPressのテーマ設定は完了しました。結局最後は「ええい、ままよ」式でやらざるをえなかったのですが、とりあえず終わりました。あとは、ダッシュボードにいろいろ警告が表示されているのでそれも修正できる項目は修正したいです。

明日は日曜日なので作業予定はありません。