2009-01-01から1年間の記事一覧

irbでタブ補完

irb/completionを読み込んでやると、irbでシェルライクなタブ補完が使用できます。 irb(main):002:0> "hello".to .to_a .to_i .to_str .toeuc .tosjis .toutf8 .to_f .to_s .to_sym .tojis .toutf16 ライブラリの読込みは毎回指定してもいいですが、 $ irb -…

perl5.6をインストール

ちょっと調べたいことがあるのでPerl5.6.2をインストール。 標準は5.8のまま、別コマンドで呼び出せるようにします。 $ wget http://www.cpan.org/src/perl-5.6.2.tar.gz $ tar xvzf perl-5.6.2.tar.gz $ cd perl-5.6.2 $ ./configure.gnu --prefix=/usr/loc…

perlの5.6と5.8ではソートアルゴリズムが違う

5.6まではクイックソート、5.7からはマージソートみたいです。 $ perldoc -f sort ... Perl 5.6 and earlier used a quicksort algorithm ... In 5.7, the quicksort implementation was replaced with a stable mergesort algorithm... ... 何かまずいの?…

nmapでpingスキャン、ポートスキャン

なにかと便利なnmapの紹介。 (他人のマシンに使わないように!!!) あのマシンのIPアドレスなんだっけ・・・というときにはpingスキャン。 # nmap -sP 192.168.0.0/24 Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2009-03-15 10:32 JST Hos…

FireFoxのアドレスバーをいろんな検索窓に

FireFoxのショートカット作成機能を使うと、アドレスバーでこんなふうに検索できるようになります。 amazonの例です。 検索 Command+t(WindowsならCtrl+t)でタブ開いてそのままamazon 。キーボードだけで検索できます。 そしてもちろんamazon以外にも好きな…

ブックマークされてる記事一覧

ここでURLいれて検索すると、はてブでブックマークされてる記事が一覧できます。 http://b.hatena.ne.jp/entrylist このブログだと・・・ http://b.hatena.ne.jp/entrylist?sort=count&url=http%3A%2F%2Fd.hatena.ne.jp%2Fmikeda%2F このへんが人気みたいで…

光でみんなをハッピーに!

ペンライトとデジカメで空中に絵を描く いやー、楽しそう。 ここにPiKAPiKAする方法や、上の動画のメイキングのってます。 http://pikapikaproject.blog.so-net.ne.jp/

シェルスクリプトでシグナルハンドラを書く

シェルスクリプトでシグナルをトラップするにはtrapを使います。 最初の引数が実行コマンドで、その後ろにトラップするシグナルを並べます。 #!/bin/sh trap 'echo exit...' EXIT trap 'echo trap INT or TERM' INT TERM echo start sleep 5 echo end 出力 s…

配置に依存しないスクリプト

スクリプトがごちゃごちゃしてきたので #!/bin/sh VAR=ABC echo $VAR $ ./try.sh ABC bin、etc、(log、tmp、...)とディレクトリを分けたら、 $ tree try/ try/ -- bin `-- try.sh `-- etc `-- try.env $ cat try/etc/try.env VAR=ABC binに移動しないとち…

カヤックの名刺

あれ、なんか知った人が・・・・ 一撃必笑! 名物『漫画名刺』の作り方! 実はこの漫画名刺は3代目。 http://www.kayac.com/member/museum 裏に、定規、コンパス、視力検査表、などなど7つの機能を持たせたがだれも裏まで見てくれない初代、 レア度の概念を…

チー・・・

体調悪いからもらいもののシャンパン飲んでさっさと寝よう。 シャンパンにはやっぱりチーズ(?)

PerlでCiscoスイッチを操作

Ciscoスイッチの作業を自動化したいと思ったらNet::Telnet::Ciscoモジュール。 http://search.cpan.org/~joshua/Net-Telnet-Cisco-1.10/Cisco.pm かなり使いやすいです。 use Net::Telnet::Cisco; ($hostname, $loginPass, $enablePass) = qw(sw01 cisco cis…

紙の明細やめると

ケイタイ料金が100円引になった。 http://www.nttdocomo.co.jp/charge/online/ebilling/index.html

アルファベットと数字を分解

以前の日記で、文字列をアルファベットと数字に分割するのに先読み、後読みアサーションなんて使ってました。 @a = split /(?<=[a-z])(?=\d)|(?<=\d)(?=[a-z])/, "12ab3cde45"; print "$_\n" for @a; 出力 12 ab 3 cde 45 でもsplitの正規表現を()で括ればそ…

無印良品でいつも買っちゃうもの

無選別 おこげせんべい ミルクケーキ

小さな数字が勝手に科学表記に

PHP

PHPで非常に小さな数字を文字列に変換すると科学表記になっちゃいます。 $ php -r '$i=0.00001;print "$i\n";' 1.0E-5 printしたり、 $ php -r 'print 0.00001;' 1.0E-5 ファイル出力したり。 $ php -r 'file_put_contents("a.txt", 0.00001);' $ cat a.txt …

YouTubeの投稿動画を元ネタの広告に

なぜ消す? とても好意的なエンターテイメントだった。作者も見てる人も。 これをみて原作に興味をもった人も相当数いたはず。 こういうやりかたは悲しい。 と思っていたところにこんなニュースが。 涼宮ハルヒのユーザー動画もマネタイズ、YouTube 1つの例…

大文字、小文字、全組合せを表示

ちょうどよさげな問題なので初Python。 大文字と小文字の全ての組み合わせを表示したいのですが・・・ "abc" をパラメータとして受け取った場合、 ['abc', 'Abc', 'aBc', 'abC', 'ABc', 'AbC', 'aBC', 'ABC']というリストを作成し、表示する。 という単機能…

いろいろ気になったこと

Mozilla、ブラウザ上で動くコードエディタ発表 http://www.atmarkit.co.jp/news/200902/16/bespin.html どこでも書ける、コラボれる。 これで通話し放題、ついにSkypeに正式対応した携帯電話が登場 http://gigazine.net/index.php?/news/comments/20090219_n…

村上春樹スピーチ

【日本語全訳】村上春樹「エルサレム賞」受賞スピーチ http://www.47news.jp/47topics/e/93925.php 村上春樹さんのイスラエル講演をハルキ風に和訳してみた http://ahodory.blog124.fc2.com/blog-entry-201.html 内容のうんぬんはおいといて、こういうところ…

echoと/bin/echo

echoにはシェルの内部コマンドのechoと/bin/echoがあります。 echoの移植性のなさ(改行抑止)で示したような混乱もまねくのですが、シェルの内部コマンドとしてのechoには便利な点もあります。それは通常コマンドと違い引数の長さに制限がないことです。(…

echoの移植性のなさ(改行抑止)

Redhat系のLinux、Solarisをよく使います。 コマンドの違いはtarのzオプション、gzgrepとzgrep、findのコマゴマした仕様など、いろいろあるんですが意外なところではechoの改行抑止があります。 先日、Linuxで動いていた/bin/shスクリプトがSolarisではちゃ…

Perlでtry...catch

Perlにはtryとcatchの例外処理構文はありません。 必要なら自分で書きます。(もちろん普通はeval{...};if($@){...}で十分です) #!/usr/bin/perl use strict; use warnings; use Switch; ## try...catch構文を定義(ラクダ本???ページより) sub try(&$){ m…

シェルスクリプトでsplit

シェルスクリプトで文字列分割と言えばやはりwhile read while read f1 f2 f3;do echo $f1 echo $f2 done < file.txt 標準入力やファイルから1行ずつ読み込んで、という最もありがちな処理にはこれが1番わかりやすいですね。IFSで区切り文字を変えたりもで…

1行コマンド、ワンライナー投稿サイト

Command-line-fu http://www.commandlinefu.com/commands/browse いろいろおもしろいコマンドのってます。 このへんは意外と知らない人多いのでは 直前のコマンドをrootで実行 $ sudo !! さっきいたディレクトリに移動 $ cd - 直前のコマンドを一部置換して…

最近読んだ本

虚空の旅人 (新潮文庫)作者: 上橋菜穂子出版社/メーカー: 新潮社発売日: 2008/07/29メディア: 文庫購入: 10人 クリック: 36回この商品を含むブログ (126件) を見る民俗学者の書くファンタジー第4弾。主人公はおなじみ女用心棒のバルサ、ではなく1作目でそ…

読書メーター

あなたの読書量をグラフで記録・管理! http://book.akahoshitakuya.com/ というサイトをみつけました。 読み終えた本だけでなく、 読書中の本、買ってるけど読んでない本、いつか読みたい本。 このへんも管理、共有できるのが非常にいいですね。 棚卸しもか…

nanosleep()の精度

usleepに続いてnanosleepの精度を確認。 gettimeofdayはマイクロ秒単位までしか測定できませんが、ナノ秒単位の精度がでることはなさそうなので気にしません。 検証プログラム #include <stdio.h> #include <sys/time.h> double get_time_sec(){ struct timeval tv; gettimeofday(</sys/time.h></stdio.h>…

Webディベロッパの祭典

いってきました。 http://www.pasonatech.co.jp/10th/event/dev_fest/tokyo.jsp そしてこんなセッションに参加しました。 どうするデベロッパ!? 2009年プログラミング大展望 小飼 弾 次世代Web Platformのために −Java技術動向と関連テクノロジーのご紹介−…

usleepの精度

Linuxのスリープ関数の精度を試してみた。 sleep(sec)、usleep(usec)、nanosleep(nsec)とある。 まずはusleep。 検証プログラム #include <stdio.h> #include <unistd.h> double get_time_sec(){ struct timeval tv; gettimeofday(&tv, NULL); return tv.tv_sec + (double)tv.tv</unistd.h></stdio.h>…