もやしの辛子醤油和え

1)もやし200グラムを熱湯で茹でます。

2)小さじ1/2のチューブ入り辛子を醤油小さじ2杯で溶いておきます。

3)茹で上がったもやしを辛子醤油で和えます。お好みで摺りゴマを散らします。

f:id:S_E_Hyphen:20210223162546j:plain

壺椀にお飾りしました。

その他、汁椀・・・ほうれん草の味噌汁、平椀・・・煮豆、です。

 

BlueStacksでtermuxを起動する

Androidエミュレーター BlueStacksWindows PC にインストールしました。起動すると、すぐにサインインを求められます。スマホタブレットなど android 端末のアカウントでサインインします。ゲームの広告が目に眩しいのですが、無料ということで我慢します。そして、なぜか Xperia からサインインしたことになっています。

Google Play はすぐに見つかりますので、termux は簡単にインストールできます。以前、スマホをLINUXサーバーにする にも書いたように openssh を apt でインストールしたうえで、所望のサーバーの秘密鍵ファイルを ~/.ssh ディレクトリにコピーします。 

# ~/.bashrc: executed by bash(1) for non-login shells.
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
    ;;
*)
    ;;
esac

# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

という .bashrc と 

alias ssh_server='ssh -i /home/user/.ssh/id_rsa.server -l user 192.168.0.n'

という .bash_aliases を作っておけば便利です。

さて、そのうえで mariadb をインストールしようとしたのですが、mariadb が無いよと言われてしまいました。

f:id:S_E_Hyphen:20210214152950p:plain

うーん、挫けてしまったので今日はここまでにしたいと思います。ちなみに termuxAPI は簡単にインストール可能でした。

SMSのバックアップ

ガラケーの頃は特に意識しなくてもSMS(ショートメール)のバックアップが可能だったのですが、スマホになってから容易ではなくなりました。

playストアで SMS backup をインストールして使ってみました。

 

f:id:S_E_Hyphen:20210213170347j:plain

 

f:id:S_E_Hyphen:20210213171536p:plain

例の、吹き出し形式のHTMLファイルを出力してくれます。PCに転送しておけば何時までも保存可能ですし、加工も容易です。ちなみに吹き出しスタイルシート化されているため、これはこれで応用の余地がありそうです。また、それとは別にJSON形式のテキストも出力してくれるようなのでjqコマンドとmysqlを利用してデータベース化することも可能かもしれません。

ただし絵文字は環境依存してしまうようです。これだけは残念ですね。

豆腐グラタンの試作

福田和代著「キボウのミライ」(ISBN:9784396635633)で透くんが作った豆腐のグラタンは豆腐、合びき肉、玉ねぎとトマトが具材でしたが、ツナ缶が余っていたので合びき肉の代用としてみました。

f:id:S_E_Hyphen:20210130133848j:plain

残念ながら豆腐からの水分で汁っぽくなってしまいました。調べてみると、豆腐グラタンは水分で皆さん苦労されているようですね。じゅうぶんに野菜とツナの味が効いているので決して水っぽくはないのですが、グラタンではなく「焼きチーズの蓋を被せた豆腐スープ」の様相を呈してしまいました。でも、とても体に優しそうな味わいでしたよ。次は豆腐の種類を変更したり(絹こし→木綿)、水切りを試してみようと思います。

 

ffmpegによる動画の切り出し

ffmpegを使用すれば元々1行で動画を切り出すことができます。しかしオプション名をいちいち覚えておくのも大変なので切り出し用のスクリプトを作成しておきました。第一引数に動画名を指定すると、imageフォルダーの中に sample01.jpg から順に連番で静止画を作成してくれます。 

#!/bin/bash
start=19.5 # 動画の切り出し開始(秒)
end=22.5 # 動画の切り出し終了(秒)
rate=24 # 1秒あたりの静止画の枚数

ffmpeg -i $1 -ss ${start} -t ${end} -r ${rate} image/sample%02d.jpg

f:id:S_E_Hyphen:20210122150622j:plain

f:id:S_E_Hyphen:20210122150635j:plain

f:id:S_E_Hyphen:20210122150648j:plain

 メディアの容量もかつてに比べて大幅に増加しましたし、また静止画も簡単に作れるようになりました。これなら一瞬のシャッターチャンスを狙うよりも、最初から動画撮影して最適な静止画を切り出した方が楽なのかも知れません。

sedで四声付きピンイン入力の支援スクリプト

中国語の発音記号であるピンインを入力するには みなさん 苦労されているようです。クリップボードモリーを利用して入力したり、FEPの辞書登録を利用したりしているようです。sed が使用できる環境であれば、下記のようなスクリプトでも入力ができそうです。

你好世界!の声調記号は Nǐ hǎo shìjiè! と表記されるのですが、これをパソコンに入力する際は便宜的に Ni3 hao3 shi4jie4! と書き下すことが多いようです。この "Ni3 hao3 shi4jie4!" をパイプで下記のスクリプトに通すと、Nǐ hǎo shìjiè! に変換されます。

当初、教科書順に単母音を上の行に書いていたのですが、そうすると先に単母音が変換されてしまい期待したのと違う変換となってしまったため逆順にしました。

全ての母音を変換対象としていますので、少し冗長ではあります。もう少し吟味すれば行数を減らせそうではありますが、現在この状態でのテスト使用を実施中です。

f:id:S_E_Hyphen:20210110160019p:plain

 

sed \
 -e "s/Er4/Èr/g"  -e "s/Er3/Ěr/g"  -e "s/Er2/Ér/g"  -e "s/Er1/Ēr/g" \
 -e "s/er4/èr/g"  -e "s/er3/ěr/g"  -e "s/er2/ér/g"  -e "s/er1/ēr/g" \
 -e "s/iong4/iòng/g"  -e "s/iong3/iǒng/g"  -e "s/iong2/ióng/g"  -e "s/iong1/iōng/g" \
 -e "s/weng4/wèng/g"  -e "s/weng3/wěng/g"  -e "s/weng2/wéng/g"  -e "s/weng1/wēng/g" \
 -e "s/uang4/uàng/g"  -e "s/uang3/uǎng/g"  -e "s/uang2/uáng/g"  -e "s/uang1/uāng/g" \
 -e "s/ing4/ìng/g"  -e "s/ing3/ǐng/g"  -e "s/ing2/íng/g"  -e "s/ing1/īng/g" \
 -e "s/iang4/iàng/g"  -e "s/iang3/iǎng/g"  -e "s/iang2/iáng/g"  -e "s/iang1/iāng/g" \
 -e "s/ong4/òng/g"  -e "s/ong3/ǒng/g"  -e "s/ong2/óng/g"  -e "s/ong1/ōng/g" \
 -e "s/Eng4/Èng/g"  -e "s/Eng3/Ěng/g"  -e "s/Eng2/Éng/g"  -e "s/Eng1/Ēng/g" \
 -e "s/eng4/èng/g"  -e "s/eng3/ěng/g"  -e "s/eng2/éng/g"  -e "s/eng1/ēng/g" \
 -e "s/Ang4/Àng/g"  -e "s/Ang3/Ǎng/g"  -e "s/Ang2/Áng/g"  -e "s/Ang1/Āng/g" \
 -e "s/ang4/àng/g"  -e "s/ang3/ǎng/g"  -e "s/ang2/áng/g"  -e "s/ang1/āng/g" \
 -e "s/un4/ùn/g"  -e "s/un3/ǔn/g"  -e "s/un2/ún/g"  -e "s/un1/ūn/g" \
 -e "s/uan4/uàn/g"  -e "s/uan3/uǎn/g"  -e "s/uan2/uán/g"  -e "s/uan1/uān/g" \
 -e "s/un4/ùn/g"  -e "s/un3/ǔn/g"  -e "s/un2/ún/g"  -e "s/un1/ūn/g" \
 -e "s/uan4/uàn/g"  -e "s/uan3/uǎn/g"  -e "s/uan2/uán/g"  -e "s/uan1/uān/g" \
 -e "s/in4/ìn/g"  -e "s/in3/ǐn/g"  -e "s/in2/ín/g"  -e "s/in1/īn/g" \
 -e "s/ian4/iàn/g"  -e "s/ian3/iǎn/g"  -e "s/ian2/ián/g"  -e "s/ian1/iān/g" \
 -e "s/En4/Èn/g"  -e "s/En3/Ěn/g"  -e "s/En2/Én/g"  -e "s/En1/Ēn/g" \
 -e "s/en4/èn/g"  -e "s/en3/ěn/g"  -e "s/en2/én/g"  -e "s/en1/ēn/g" \
 -e "s/An4/Àn/g"  -e "s/An3/Ǎn/g"  -e "s/An2/Án/g"  -e "s/An1/Ān/g" \
 -e "s/an4/àn/g"  -e "s/an3/ǎn/g"  -e "s/an2/án/g"  -e "s/an1/ān/g" \
 -e "s/iu4/iù/g"  -e "s/iu3/iǔ/g"  -e "s/iu2/iú/g"  -e "s/iu1/iū/g" \
 -e "s/iao4/iào/g"  -e "s/iao3/iǎo/g"  -e "s/iao2/iáo/g"  -e "s/iao1/iāo/g" \
 -e "s/ui4/uì/g"  -e "s/ui3/uǐ/g"  -e "s/ui2/uí/g"  -e "s/ui1/uī/g" \
 -e "s/uai4/uài/g"  -e "s/uai3/uǎi/g"  -e "s/uai2/uái/g"  -e "s/uai1/uāi/g" \
 -e "s/ue4/uè/g"  -e "s/ue3/uě/g"  -e "s/ue2/ué/g"  -e "s/ue1/uē/g" \
 -e "s/uo4/uò/g"  -e "s/uo3/uǒ/g"  -e "s/uo2/uó/g"  -e "s/uo1/uō/g" \
 -e "s/ua4/uà/g"  -e "s/ua3/uǎ/g"  -e "s/ua2/uá/g"  -e "s/ua1/uā/g" \
 -e "s/ie4/iè/g"  -e "s/ie3/iě/g"  -e "s/ie2/ié/g"  -e "s/ie1/iē/g" \
 -e "s/ia4/ià/g"  -e "s/ia3/iǎ/g"  -e "s/ia2/iá/g"  -e "s/ia1/iā/g" \
 -e "s/Ou4/Òu/g"  -e "s/Ou3/Ǒu/g"  -e "s/Ou2/Óu/g"  -e "s/Ou1/Ōu/g" \
 -e "s/ou4/òu/g"  -e "s/ou3/ǒu/g"  -e "s/ou2/óu/g"  -e "s/ou1/ōu/g" \
 -e "s/Ao4/Ào/g"  -e "s/Ao3/Ǎo/g"  -e "s/Ao2/Áo/g"  -e "s/Ao1/Āo/g" \
 -e "s/ao4/ào/g"  -e "s/ao3/ǎo/g"  -e "s/ao2/áo/g"  -e "s/ao1/āo/g" \
 -e "s/Ei4/Èi/g"  -e "s/Ei3/Ěi/g"  -e "s/Ei2/Éi/g"  -e "s/Ei1/Ēi/g" \
 -e "s/ei4/èi/g"  -e "s/ei3/ěi/g"  -e "s/ei2/éi/g"  -e "s/ei1/ēi/g" \
 -e "s/Ai4/Ài/g"  -e "s/Ai3/Ǎi/g"  -e "s/Ai2/Ái/g"  -e "s/Ai1/Āi/g" \
 -e "s/ai4/ài/g"  -e "s/ai3/ǎi/g"  -e "s/ai2/ái/g"  -e "s/ai1/āi/g" \
 -e "s/v4/ǜ/g"  -e "s/v3/ǚ/g"  -e "s/v2/ǘ/g"  -e "s/v1/ǖ/g" \
 -e "s/v0/ü/g" -e "s/v/ü/g" \
 -e "s/U4/Ù/g"  -e "s/U3/Ǔ/g"  -e "s/U2/Ú/g"  -e "s/U1/Ū/g" \
 -e "s/u4/ù/g" -e "s/u3/ǔ/g"  -e "s/u2/ú/g"  -e "s/u1/ū/g" \
 -e "s/I4/Ì/g"  -e "s/I3/Ǐ/g"  -e "s/I2/Í/g"  -e "s/I1/Ī/g" \
 -e "s/i4/ì/g"  -e "s/i3/ǐ/g"  -e "s/i2/í/g"  -e "s/i1/ī/g" \
 -e "s/E4/È/g"  -e "s/E3/Ě/g"  -e "s/E2/É/g"  -e "s/E1/Ē/g" \
 -e "s/e4/è/g"  -e "s/e3/ě/g"  -e "s/e2/é/g"  -e "s/e1/ē/g" \
 -e "s/O4/Ò/g"  -e "s/O3/Ǒ/g"  -e "s/O2/Ó/g"  -e "s/O1/Ō/g" \
 -e "s/o4/ò/g"  -e "s/o3/ǒ/g"  -e "s/o2/ó/g"  -e "s/o1/ō/g" \
 -e "s/A4/À/g"  -e "s/A3/Ǎ/g"  -e "s/A2/Á/g"  -e "s/A1/Ā/g" \
 -e "s/a4/à/g"  -e "s/a3/ǎ/g"  -e "s/a2/á/g"  -e "s/a1/ā/g"

株価の取得

日本経済新聞のホームページに自動的にアクセスし、株価を取得するスクリプトを作ってみました。

 

#!/bin/bash
host="127.0.0.1"
work_dir="."
scode="xxxx" # 所望の銘柄コードです

# まだテーブルが作成されていない場合、
# 以下のようななテーブルを作成します。
mysql -h ${host} life_log << _SQL_
 create table if not exists stock(
  seq int primary key auto_increment,
  kind varchar(50),
  UpdateDate date,
  rate int,
  insertDate datetime,
  comment varchar(20)
 )ENGINE=InnoDB DEFAULT CHARSET=utf8;
_SQL_

# 本当はこの下に年末年始・祝日などを列挙する
# 仕組みもあるのですが、とりあえず土日を休日に
week_day=`date +'%u'`
work="ON"
case ${week_day} in
 [1-5]) work="ON";;
 *) work="OFF";;
esac
if [ $work = "OFF" ]
then
 printf "株価:%s市場は休みでした\n" `date "+%Y年%m月%d日"`
 exit
fi

# 日本経済新聞HPの特定銘柄をダウンロードします
wget -q https://www.nikkei.com/nkd/company/?scode=${scode} -O ${work_dir}/received.html

# m-headlineLarge_textというタグを目当てに銘柄名を取得します
# レコードの区切りがCR+LFなのでCRを除去します 
kind=\
`cat ${work_dir}/received.html |\
 grep m-headlineLarge_text |\
 sed -e 's/<[^>]*>//g' |\
 sed -e "s/ //g" |\
 sed -e "s/\r//g" `
# m-stockPriceElm_value nowというタグを目当てに現在価格を取得します
# 「円」の文字、および桁区切りのカンマを除去します
rate=\
`cat ${work_dir}/received.html |\
 grep m-stockPriceElm_value\ now |\
 sed -e 's/<[^>]*>//g' |\
 sed -e "s/ //g" |\
 sed -e "s/円//g" |\
 sed -e "s/\r//g" |\
 sed -e "s/,//g"`
# m-stockInfo_dateというタグを目当てに日付を取得します
date=\
`cat ${work_dir}/received.html |\
 grep  m-stockInfo_date |\
 sed -e 's/<[^>]*>//g' |\
 sed -e "s/ //g" |\
 sed -e "s/\r//g" `

# それぞれをデータベースに登録します
mysql -h ${host} life_log << _SQL_ #2> /dev/null
 insert into stock(kind,UpdateDate,rate,insertDate)
    value("${kind}","${date}","${rate}",now());
_SQL_


printf "株価:%s%sの株価は%s円でした\n" `date "+%Y年%m月%d日"` "${kind}" "${rate}"
rm ${work_dir}/received.html    

 crontab などに登録して定期的に実行すれば株価のデータベースが作成できます。