タグ

ブックマーク / d.hatena.ne.jp/lurker (8)

  • ネットワークケーブルを接続/切断する時のTips - 技術メモ帳

    ping -a で音が鳴るようになるので、 これを利用して、ケーブルの接続/切断状況を音で確認。 コンソールとLANケーブルなんかの実作業場所がちょっと遠いときに便利。 ping -a IPアドレス あと何もケーブルだけじゃなくて ファイアウォールやルーティングの設定の時とかにも使えるよね。 あと五感を有効利用するのは良い事だよね。 -- ※これどこかに書いてあったテクニックです

  • 技術メモ帳 - 単語抽出するちょっとしたテクニック

    shell のちょっとしたテクニック - odz buffer odzさんのところで単語の出現頻度を調べるためのワンライナーが紹介されている。 単語抽出についてはいくつかやり方があるので紹介する。 特に egrep -o は非常に実用的。 もちろん、この話はリンク先において主題ではない。 俺のただの自己満足。 tr -cs で単語抽出 $ tr -cs 'a-zA-Z' '\n' < ./.zshrc 上記コマンドで、a-zA-Zのみで構成される文字列を抽出できる。 -c オプションで、'a-zA-Z' の補集合(以外)を '\n' に変換し、 -s オプションで、最後の引数で指定される要素の重複を除去している。すなわち '\n' の連続を除去している。 grep -o で単語抽出 grepには、( -o、--only-matching ) オプションというのがある。 これは、指定された正

  • ssh-copy-idコマンドで公開鍵をリモートホストに登録する - 技術メモ帳

    http://www.t-dori.net/k-way/?date=20061218 こんなコマンドがあったのか。常識? ssh-copy-id username@hostname.example.jp か。パスワード認証のパスワードが求められる。 あああ、こんな便利なコマンドあったのか。 いわゆる authorized_keys に登録する処理が簡単に行える。 ただ、ほとんどの環境に入ってない。 最近のOpenSSHだと入ってるのかな。 ちなみにいつもはこうやってる。 $ cat ./.ssh/id_rsa.pub | ssh user@remote_host "cat >> ./.ssh/authorized_keys" 参考: http://www.delafond.org/traducmanfr/man/man1/ssh-copy-id.1.html http://takkan-m

  • 技術メモ帳 - 拡張子ごとにコマンドを対応づける

    拡張子ごとにコマンドを対応づける事が出来る Suffix Alias という機能が zsh 4.2系から実装されていたらしい。 知らなかった。 どんな事が出来るのかというと たとえば、 alias -s txt=cat とした場合、 以下のようにするだけで、 % ./file.txt 先ほど設定したコマンドが自動で実行されるようになる。 % cat ./file.txt あとはもうアイデアしだいだが、 拡張子が *.log のときは、tail -f するなんて事も出来る。 alias -s log='tail -f' 参考: http://zshwiki.org/home/examples/aliassuffix http://slashdot.jp/articles/04/03/27/2333234.shtml?topic=80 http://zsh.dotsrc.org/Doc/Rel

  • グローバルオブジェクトへの参照は遅い - 技術メモ帳

    マイクロソフトのドキュメントに書いてあったので、 実際にやってみた。 どうも、ローカル変数にグローバルオブジェクトへの参照を キャッシングすると速くなるようだ。 http://www.microsoft.com/japan/msdn/columns/dude/dude100499.aspx たとえば、window オブジェクトを使用するときは、 以下のようにすれば速くなるっぽい。 var w = window; // 以後、w を使用する。 グローバルオブジェクトへの直接アクセス 通常の使い方。 4464 ms window.global = 0; (function(){ console.time("test"); for(var i=0; i<1000000; i++){ window.global++; } console.timeEnd("test"); console.log(

  • Javascriptでポートスキャン - 技術メモ帳

    ITMediaの記事が抽象的すぎて原理がわからなかったので、 BlackHat のやつのソースを斜め読みしてみた。 僕はいつも適当なので、間違いがあるかもしれません。 http://www.spidynamics.com/spilabs/js-port-scan/ http://japan.cnet.com/news/sec/story/0,2000056024,20185667,00.htm 簡単にまとめさせていただくと、 IFrame と Image#src により 任意のIPアドレスにアクセスさせ、 特定のタイムアウト時間(ハードコーディング/マジックナンバー) が 過ぎたらそのホストは生きていない判定をしている。 これは、Firebug で試してみたらなんとなく体感。 (new Image()).src = "http://IPアドレス"; としたときに、当に存在すると 一瞬だが

  • sshで指定したコマンドしか実行できない公開鍵を作る - 技術メモ帳

    自動バックアップ処理をさせたいが シェル権限を与えたくないときとかに使える技。 やり方は簡単で $HOME/.ssh/authorized_keys の "コマンドを制限したい公開鍵" の行の先頭に 実行させたいコマンドを記述すればよい。 そのときのフォーマットはだいたい以下のようになる。 command="実行させたいコマンド",sshのオプションをカンマ区切りで書く command=hoge というのを付け足すことによって その公開鍵でアクセスがあったときに 指定したコマンドを実行させることができる。 たとえば、uptime を実行させたいときは、 以下のようにすればよい。 command="uptime",no-pty,no-port-forwarding,no-X11-forwarding,no-agent-forwarding ssh-rsa AAAABbBFERTWER....

  • マルチスレッドな仕事 - 技術メモ帳

    今、仕事でマルチスレッドな Ruby アプリケーションを書いている。 そのときにリファクタリングの過程で こんなのあったら便利じゃないのかなぁってのを 思いついたのでココに書いてみる。 とりあえず、普通に書くとマルチスレッドなアプリの イディオムは以下のようになると思う。 threads = [] 10.times{ threads << Thread.new{ puts "hello" } } threads.each{ |th| th.join } こいつをメソッドとして、抽出してみた。 def do_multi_threads(num, &block) threads = [] num.times{ threads << Thread.new{ block.call } } threads.each{ |th| th.join } end # メインコードはすごくシンプルになる。 d

  • 1