2014-08-19

シェルの魔法

スゴ怖い!

$ ls
./
../
何もない状態。

$ touch a b c
$ mkdir dir1 dir2
$ ls
./
../
a
b
c
dir1/
dir2/
ファイルとディレクトリを作成。

$ rm *
/usr/bin/rm: cannot remove directory `dir1': Is a directory
/usr/bin/rm: cannot remove directory `dir2': Is a directory
$ ls
./
../
dir1/
dir2/
rmで全削除。。。が、オプションをつけていないので、ディレクトリは残る。

$ touch a b c
$ ls
./
../
a
b
c
dir1/
dir2/
消えたファイルを復活。

$ echo hoge > -rf
$ ls
-rf
./
../
a
b
c
dir1/
dir2/
もうひとつ、ファイルを作成。

$ rm *
再度、オプションなしでrm。

$ ls
-rf
./
../

2014-08-03

胃袋わしづかみ!オトコを落とせるモテカレーの作り方




モテカレー「男落とし」の特徴



  • 肉は正肉ではなく、牛スジを使う。 トロトロの食感と甘い脂がカレーと混ざり合う。
  • じゃがいもの代わりに大根を使って、さっぱりジューシーに仕上げる。
  • 具の大きさが尋常でない




作り方(5皿分)


大事なことは、たった1つだけ。
それさえ間違えなければ、必ずおいしく作ることができる。



切る


牛スジ(300g)


名前の通りスジばっていて、切るのがなかなか大変だが、
カレーができあがる頃には驚くほど柔らかく、トロトロになっている。
また、煮込んでいるときに甘い脂が出て、カレーをより美味しくしてくれる。



ダイコン(1/2本)

食べるときにジューシーさが引き立つように、
かなり大きめ・厚めにカット。
牛すじのトロミと甘みに、サッパリとしたダイコンがバランスよくマッチしてくれる。



ニンジン(2本)


ゴロッと大きくカット。
牛スジの甘みをいっぱい吸い込んでくれる。



タマネギ(2玉)


ひとつはみじん切り用。うまみをカレーに溶けこませる。
もうひとつは、具として食べる用。これも大きめにカット。



じゃがいもは入れない


じゃがいもの粉っぽさ、ザラツキに牛スジの甘みと脂が絡まると、
しつこい味になってしまう。
ダイコンのジューシーさでサッパリ感を出すのがポイント。



炒める



サラダオイルとタマネギのみじん切りを入れる。
みじん切りされたタマネギは、カレーの中のなかに溶けてうま味となってくれる。
具のためのタマネギは後ほど入れる。



タマネギがあめ色になったら



牛スジは、赤みを取る程度に軽く炒める。
ここから一気に、ニンジンを入れて………



ダイコンを入れて……




タマネギを入れる。
タマネギは形崩れしやすく、できあがりの時に具として残したいので、
炒めたりせず最後に入れる。(溶けてなくなっちゃうから)



煮る ★ここが一番大事!



いつもこのカレールウで作るが、お好みで変えてもらって構わない。




なんかブイヨンペーストがついてきてて本格感があってステキ。



ダイコンから大量の水が出るので、
パッケージに書いてある通りに水を入れると、
味のないカレーができあがってしまう!
このカレールウの場合なら、450mlで充分だ。



ブイヨンペーストを入れて10〜15分ほど煮込む。
ダイコンの水分で水かさがどんどん増える。



カレールウを入れてさらに15分煮込むと、いったん完成。
もちろん充分おいしいが……



さらにおいしく

もし真空保温調理鍋であれば、
さらに数時間、保温状態で寝かせることができ、 牛スジはさらにトロトロになり、具材は味が染みこんだカレーになる。


↑でもいいが、実際にお店に足を運んで家庭にあったものを選ぶのがいいと思う。
使わなくても充分においしいので、問題ないっちゃない。


できあがり



うまい(確信)

このカレーの「男の胃袋わし掴み力」はハンパじゃない。
男を魅了する力のことを女子力というのなら、まさに圧倒的女子力といっていい。
ぜひ一度試してみてほしい。



私も作りました!



「お待たせ!カレーしかなかったんだけどいいかな?」

2014-08-02

mvにサヨナラ!renameコマンドのイケメンぶりが半端ない




なんですかこのイケメンコマンドは

ファイル名の変更、ファイルの移動と言えば mvコマンドだ。初歩の初歩だ。
複雑なリネームはパイプやシェルスクリプトで実現するものだという思い込みから、
renameというイケメンコマンドを知らずにいた!なんてもったいない!



とても簡単、そしてステキすぎる実行結果

$ ls
file01.txt
file02.txt
file03.txt
file04.txt
file05.txt

$ rename 's/.txt/.csv/' *.txt

$ ls
file01.csv
file02.csv
file03.csv
file04.csv
file05.csv

これだけで、すべての .txtファイルの拡張子変更ができてしまった!

見ての通りrenameコマンドは、複数ファイルを一括でリネーム、移動するときに力を発揮する。
コマンドの記法は、以下の通り。

rename {正規表現} {処理対象}

処理対象のファイル、ディレクトリをどのようにリネーム(または移動)するかを、
perl正規表現で指定できる。説明不要の簡単さだ。

難しいこと抜きで今日からすぐに使える。

これはリネームの例だが、もちろん他のディレクトリへ移動させることもできる。

$ ls some/sub/dir/
file01.csv
file02.csv
file03.csv
file04.csv
file05.csv

# some/sub/dir/以下の.csvファイルをカレントディレクトリに移動する。
$ rename 's/\//_/g' some/sub/dir/*.csv

# 移動するとき、元のディレクトリ階層をファイル名にくっつけておいた。
$ ls
some/
some_sub_dir_file01.csv
some_sub_dir_file02.csv
some_sub_dir_file03.csv
some_sub_dir_file04.csv
some_sub_dir_file05.csv
これをmvでやろうとおもったらなかなか大変だ。



おさえるべきオプションはたった1つ


それは、-n オプションだ。

rsyncの--dry-run (-n)と同じで、
もし実行したらどのようなリネームが行われるかを表示して、実際には実行しない。
renameは一括でリネーム・移動を行うコマンドのため、
事故らないように -n で一旦確認するクセをつけておくといい。

$ ls
kuso.txt
miso.txt
unko.txt

$ rename -n 's/$/.bak/' *
kuso.txt renamed as kuso.txt.bak
miso.txt renamed as miso.txt.bak
unko.txt renamed as unko.txt.bak

$ rename -n 's/^(.{2})/$1-renamed-/' *
kuso.txt renamed as ku-renamed-so.txt
miso.txt renamed as mi-renamed-so.txt
unko.txt renamed as un-renamed-ko.txt
これらは実際には実行されていない。安心。
複雑なリネーム、移動のときには-n で確認しながらコマンドを書いていくといい。



まとめ


もちろんmvにサヨナラなんて無茶な話だが、
ls, find, grep とかをパイプでつなげて…とかやらなくても、単一のコマンドでパワフルなリネーム・移動が手軽にできるのはとても便利。
是非試してみてほしい。