Just another Ruby porter,

〜2015年3月上旬〜


<Older(,) | Newer(.)> | Recent(/)>> | RDF

2015-03-01 (Sun)

fitbit oneのバッテリーが3日ぐらいで空に

へたってしまったのか、気づくとボタン押しても反応ない状態に。
1日使って確認してもほとんど減ってないんだけどなあ。
毎日充電するのも面倒だよな。


2015-03-02 (Mon)

足つぼインソール

会社で履いてるサンダルに足つぼインソールを入れたら結構快適。
ただサンダルなのでどんどん後ろにずれる。
なにかいい滑り止めはないかと思ったら、でかめ輪ゴムがいい感じだ。
本の付録を挟むときに使われてるくらいの大きさ。
これをインソールの下に入れると摩擦がいい感じになってずれなくなる。
ただそうは言っても徐々にあちこち移動するので、
いつのまにか輪ゴムがはみ出ることも。


2015-03-03 (Tue)

lastpipe

shの落とし穴としてreadをパイプで受け取ると別プロセスになるので参照できないってのがあるが、
bashだとshopt -s lastpipeで回避できるようだ。

% bash -c 'echo foo|read a;echo $a' 

% bash -c 'shopt -s lastpipe;echo foo|read a;echo $a'
foo
<()技を使わなくてもよくなるのはわかりやすい。

2015-03-04 (Wed)

pipefail

pipeを使うと最後に実行したコマンドの終了ステータスが$?にセットされるが、
bashだとset -o pipefailで失敗した値が設定される。

% bash -c 'false | true; echo $?'                    
0
% bash -c 'set -o pipefail; false | true; echo $?'
1

1年前に知りたかった。


2015-03-05 (Thu)

Google ChromeがlinkをhoverしてもURLを表示してくれない

なんかいつの間にそんな挙動になっていて不便極まりない。
ぐぐってみるとどういうわけか設定で
[システム]-[ハードウェア アクセラレーションが使用可能な場合は使用する]
をチェックすると起こるらしい。確かに最近これ何気なくチェックした記憶がある。
まさか、こんな設定が関係するとは。


2015-03-06 (Fri)

stderrをfilterしたい #シェル芸

最近timeコマンドの-f "%E %C"を多用してる。
実行時間とコマンドラインを表示してくれるので便利だが、
ワイルドカードを使うとひどいときは何行も表示されてうっとうしい。
そこでcutでも使って適当に100文字ぐらいに切り詰めようかと思ったら、
stderrに表示されてるので困った。2>&1したら意味がないし。
で、bashを使ってたので以下の方法を思いついた。
とりあえず20文字で切ってみる。日本語は考えない。

$ /usr/bin/time -f "%E %C" ls 12345678901234567890
ls: cannot access 12345678901234567890: No such file or directory
Command exited with non-zero status 2
0:00.00 ls 12345678901234567890
$ /usr/bin/time -f "%E %C" ls 12345678901234567890 2> >(cut -c-20 >&2)
ls: cannot access 12
Command exited with 
0:00.00 ls 123456789

だめだめである。そりゃ他にもstderrに出してるのもいるわけで当然ではある。
要するに最後の行だけ処理すればいいわけで、となるとsedなら簡単だ。

$ /usr/bin/time -f "%E %C" ls 12345678901234567890 2> >(sed '$s/\(.\{20\}\).*/\1 .../' >&2)
ls: cannot access 12345678901234567890: No such file or directory
Command exited with non-zero status 2
0:00.00 ls 123456789 ...

ついでに省略した部分は...で表わすことにした。あとはfunctionなりスクリプトにするなり。


2015-03-07 (Sat)

字幕

torneで録画しておいた番組に字幕がつくようになってしまった。
設定をいじった記憶もないし、そもそもどこで設定するのかわからない。
やっと再生中の△でのメニューの中に見つけたが、こんなのいじらないしなあ。
と思ったが、そういえばリモコンにまんまSUBTITLEボタンが存在していた。
これか。間違えて押した可能性が高いな。


2015-03-08 (Sun)

bashとzshのAlt-.

CTRL-Rで過去のヒストリーを呼び出してからAlt-.すると微妙に違う。
zshは常にヒストリーとは関係なく前回のコマンドラインが対象だが、
bashだと呼び出したヒストリーの前のコマンドラインが対象になる。
このbashの仕様はすごく使いづらい。
しかたなく!$するわけだけど、
もうAlt-.するのが癖になってるのでつい打ってしまう。

とりあえず無理矢理こうすればzshと同じ挙動になるようだ。

$ bind '"\e.": "!$\e^"'

!$を\e^で展開させる。ちょっとこの設定で使ってみよう。


2015-03-09 (Mon)

昨日の設定ではやっぱだめ

Alt-.って連続で打てば次々過去に遡れるわけで、
昨日の設定じゃそれができなくなる。
どっちを取るかだな。


2015-03-10 (Tue)

findでファイルを削除

便乗して。find派としてはやはりfindのみで。

% find . \( -iname '*.jpg' -o -iname '*.gif' -o -iname '*.png' \) \! -name '*_thumb*' -delete

-name '*.[jJpPgG][pPnNiI][gGfF]'はちょっと強引すぎるような。


<Older(,) | Newer(.)> | Recent(/)>> | RDF


WWW を検索 jarp.does.notwork.org を検索

わたなべひろふみ
Key fingerprint = C456 1350 085F A320 C6C8 8A36 0F15 9B2E EB12 3885
Valid HTML 4.01!