タグ

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

  • tarに格納されているファイル一覧表示 - 技術メモ帳

    tar tvf ファイル名 で表示。 $ tar tvf ./test.tar drwxr-xr-x hoge/fuga 0 2007-03-18 11:18:49 ./dir/ -rw-r--r-- hoge/fuga 20374 2005-03-13 02:36:51 ./dir/piyo.txt gzipで圧縮されたtarだった場合は、tar tvfz ファイル名。 $ tar tvfz ./test.tar.gz drwxr-xr-x hoge/fuga 0 2007-03-18 11:18:49 ./dir/ -rw-r--r-- hoge/fuga 20374 2005-03-13 02:36:51 ./dir/piyo.txt bzip2で圧縮されたtarだった場合は、tar tvfj ファイル名。 $ tar tvfj ./test.tar.bz2 drwxr-xr-x h

    agw
    agw 2007/03/20
  • 意外と知られていないファイル探索方法(grep --include) - 技術メモ帳

    書こう書こう書こうと思っていたら先に書かれてしまった。 404 Not Found この行き場の無い感情をどうにかボクの中から排除しなければならない。 そう考えたときに独り言のようにこのブログロに記述すれば良いじゃないかという 結論にたどり着いたのはもはや必然とも言える。 find | xargs による探索だが、それが簡単なものであれば 実は grep コマンドだけでうまくいく。 GNU grep、BSD 系の grep コマンドでは include、exclude オプションで再帰検索時に検索対象とするファイルを絞り込む事が出来るのだ。 --include=pattern --exclude=pattern たとえば、カレントディレクトリ以下の *.rb から test という文字列を 含むファイルを探索したい場合は次のようにすれば良い。 fgrep -r --include='*.r

    agw
    agw 2007/03/17
  • kajidaiの日記 - 新しいプログラミング言語を習得するための15の方法

    ↓で紹介されてた新しいプログラミング言語を習得するための15の方法についてhttp://forums.programming-designs.com/viewtopic.php?pid=3482I've working knowledge of a bunch of programming languages but job demands to learn a new language frequently in a short time. Instead of reading hundreds manual/book pages, I quickly read 10-15 pages of tutorial or primer. (As you know google is the best search engine to look for such stuff). I keep p

  • tail -fしているファイルをmvしてもそのまま読み込み続ける事が出来るのはなぜか - 技術メモ帳

    せっかく教えていただいたので tail -f しているファイルをmvしても そのまま読み込み続ける事が出来るのはなぜなのかを調べてみた。 『詳解UNIXプログラミング(Advanced Programming in UNIX Environment)』 の CHAPTER.4 の 4.14 ファイルシステム に この件に関連する情報が記載されている。 コレを参考にボクの解釈した結果をまとめてみた。 間違っている箇所がありましたら 気軽にご指摘していただけますようよろしくお願い致します。 まず、事の発端から。 ボクのこの一文。 http://d.hatena.ne.jp/lurker/20070228/1172595016 そうそう、tail で思い出したが、GNUのtailはデフォルトで (たぶん/詳しくは知らない)inode番号を見ているため tail -f した状態で そのログファイル

  • 実行ファイルを実行できる形で圧縮する - 技術メモ帳

    忘れてたのでメモ。gzexe コマンド。 gzexe - compress executable files in place http://www.linux.or.jp/JM/html/GNU_gzip/man1/gzexe.1.html echoするだけのshell scriptを圧縮してから実行してみる。 $ cat ./test.sh #!/bin/sh echo aiueo $ gzexe ./test.sh ./test.sh: -9.1% # 損してる!! $ chmod u+x ./test.sh $ ./test.sh aiueo 仕組みは簡単で、 ファイルの末尾に圧縮したデータを入れていて、 それを展開して実行するコードが上の方に記述されている。 バイナリが含まれるので cat -v させていただいた。 $ cat -v ./test.sh #!/bin/sh ski

  • システム管理に使えるファイル更新監視テク - 技術メモ帳

    システム管理とかしてると、特定のディレクトリ以下のファイルの更新を 調べたいときとかっていうのはわりとある。 どんなファイルが更新されてどういった内容に変化したのかを見える化。 またしても Linux / watch ネタだ。FreeBSDはportsで、mac osx(darwin)は どこかで公開されてたdmgを使ってる。 中毒性があるので未成年の使用は禁止されている。 カレントディレクトリ内のファイルを 最近更新があったファイルを上の方に表示し、 最終行2行を表示し続けるもの。 $ watch -n2 'tail -n2 `ls -t`' Every 2s: tail -n2 `ls -t` Wed Feb 28 01:04:40 2007 ==> test2.txt <== unko ==> test4.txt <== aiueoadfsaf ==> test1.txt <== e

  • Rhino in Spring、継続 - FAX

    Rhino in Spring、継続 RHINO, JavaScript Rhino in Spring DI + JavaScriptで、反射的に見送ってしまいそうでした。 (サーバーサイドJavaScriptで、DIが出てくるものは、JavaScript/スクリプトの性質を質的に誤解しているんだと思います。のっけから脱線になりますが、Seasar(DIコンテナ)を使ってたときに最終的にメリットとして感じたのはAOPだけで、これはプロトタイプベースのアプリケーションではパターンの一つに過ぎないと思っています。) こんな毎日・・・ - RhinoinSpringのExample 私も、上記サンプルを簡略化し試してみました。 送信された値を、累積的に加算していくアプリケーションです。 こんな画面です。 コントローラーは、こんな感じです。 var tape = [0]; // 履歴 for(

  • 再帰の練習帳3 - carbuncleの日記

  • 坊やがゆく - Railsでソーシャルブックマークを作ってみようか(第2回)

    エンジニア説明Railsアプリを作る「はじめの一歩」としての足がかりになればと思いまとめました。手順に沿ってコピペしていくといつのまにかアプリケーションが完成するというサンプルです。第1回のmasuidriveさんベースにRails勉強会@東京第11回での高橋征義さんバージョンとInternet Week 2006でのかずひこさんバージョンをミックスしました。環境やインストール、趣旨や概要につきましては第1回をご覧ください。 ■第1回との相違点Internet Week 2006のT24 : はじめよう Ruby on Rails 〜フレームワークで作るWebアプリケーション〜をベースに内容を変更しました。基的な流れは変わっていませんが、機能/モデルが変更されています。文字コードの設定を先に行うようにしました。モデルの定義を先に明示しました。モデルの作成にマイグレートを使用するようにしま

  • zshとSIGHUPとその設定 - 技術メモ帳

    shell と SIGHUP - odz buffer 関連: 一度 tty から起動したプロセス (csh/ksh 版) - にぽたん研究所 なるほど。zshではデフォルトだと 終了時にSIGHUPが送信されるらしい。 手元のbash2.0で試してみたら終了時にSIGHUPが送信されなかった。 zshで終了時に警告を出さないようにするには、 setopt nocheckjobs とすればよいようだ。 あと、zshにはいきなりdisownの状態(job tableに加わらない状態)で バックグラウンド実行する &! という記法がある。 SIGHUP送られない。 % perl nohup.pl &! % exit % pgrep -fl nohup.pl 524 perl nohup.pl -- 余談だが、zshではsetoptに指定するオプション名に 好きなだけアンダーバーをつける事が出来

    agw
    agw 2007/02/20
  • mysql -Xでクエリーの結果をXMLで取得 - 技術メモ帳

    mysql -X でクエリーの結果がXMLで取得できるらしい。 興味深いのでやってみた。 なんか適当にテーブルを作成する。 とりあえず、4つのカラムを持つtというテーブル作った。 mysql> create table t(id int not null, name varchar(255), body text, updated_at datetime); mysql> insert into t values(1, 'name', 'body', current_timestamp); mysql> insert into t values(2, 'name2', 'body2', current_timestamp); とりあえず、普通にSELECTで表示してみる。 # mysql -e 'SQL' で任意のSQLを実行可能。ワンライナーに使えます。 $ mysql -e 'sele

  • 漢のzshに乗り換えた時にアッーってなるコト - 技術メモ帳

    男のbashユーザーが、バラ色の紳士こと漢のzshに乗り換えたときに アッーってなるコト事を先ほどいくつか思いついたので共有する。 !!とかの履歴実行はrコマンドで zshには、r というシェル組み込みコマンドがあって 履歴からの実行が簡単に行える。 たとえば、一番最後に実行したviコマンドを実行したいときなどだ。 bashなんかだと !vi で出来るのだが、 rコマンドだったら % r vi でよい。 直前に実行したコマンドを再び実行したいとき、 bashなんかだと !! というやり方になるが、 rコマンドでは、 % r とするだけでよい。 また、文字列を置き換えてからの履歴実行はどうだろう。 たとえば次のようなbashの例だ。 $ vi .zshrc $ !vi:s/zsh/bash/ これは、最後に実行したviコマンドの引数文字列を ":s/zsh/bash/" によりzshという文

    agw
    agw 2007/02/19
  • Iteratorより基本forループでArrayListのget()を使ったほうがいいなんて話はもはや百害あって一利なしです。 - 矢野勉のはてな日記

    Java yoshioriさんがいいこと書いてるのを発見しました。私も大賛成。今までArrayListが返ってきていたから getでfor文を書いていたとき。 フレームワークをバージョンアップして もしもそこがLinkedListになっていたら それだけでかなりのパフォーマンスの低下になる。 (Iteratorの誤差など遙か彼方へ吹き飛ぶほどに) そのリストを使っているfor文を全部調べ上げて すべて書式を変更するのはかなりの作業になるだろう。 だから、JavaではIteratorを使うべきだ。 関連記事はこのあたりかな。 http://d.hatena.ne.jp/BlacksmithMirai/20061017/1161081012LinkedListに関する不適切な説明J2SE 5.0虎の穴 拡張 for 文 Iteratorと基forループとの話は、櫻庭さんまで上記虎の穴のリンク

  • チープカ - はてなダイアリーのデザインを作るうえでのtips

    CSS | 01:06 | はてなダイアリーのデザインをいじる上ではてなダイアリー独自に気をつけなくてはいけないものについて例をあげてみます。DOCTYPE宣言が互換モードまず一番問題になるのがここでしょうか。気をつけなくてはいけないのはなんといっても「IEで見るとwidthにpaddingがふくまれる」という点です。これはIE7になっても変わりません。そのためwidthとpaddingを同居させた要素を記述した場合にIEと他のモダンブラウザでは表示が変わってしまいます。回避策で一番簡単なのは同じ要素にwidthとpaddingを同居させないということです。ただしはてなダイアリーの構造上h1とかでwidthとpaddingを一緒に使わざるを得なくなったりするのでそん時はハックするしかないです。はてなのヘッダを透明にするはてなのヘッダは配色がしやすいように、画像部が透過されるようになりました

    agw
    agw 2007/02/10
  • アルファベットを含む文字列を数値に変換する - FAX

    アルファベットを含む文字列を数値に変換する JavaScript urxの日記 - parseInt()でハマる urxの日記 - parseInt()で また ハマる 上記で、勉強させていただきました。 parseIntって、そんな仕様なの!! 文字列の先頭から数字を読んでいき、数字以外にあたったら、そこまでで終わり、という動き。 ...、あやしいけど便利かも。 以下は、Firefox 2.0、IE6、Opera 9で数値になりました。 alert(parseInt('55px')) // 55 標準モードにすると、styleのサイズとかの値に単位が付くけど、これは取らなくてもよかったのか。 ちなみに以下はNaNでした。 alert(1*'55px') // NaN Permalink | コメント(3) | トラックバック(0) | 16:35

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

    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 ) オプションというのがある。 これは、指定された正

  • Thirのノート

    thir ノート:覚え書き。断片的かつあまりまとまりのない文章を記録/公開しています。詳しい方針は自己紹介にて。

  • MySQLのログイン自動化 - 技術メモ帳

    $HOME/.my.cnf に以下を記述する。 [client] database=データベース名 user=ユーザー名 password=パスワード

    agw
    agw 2007/01/25
  • 技術メモ帳 - 二つのファイルに共通する行をエレガントに抽出

    id:parasporospa さんの uniq -d と uniq -u についての記事を見た。 それぞれ、重複する行、ユニークな行を抽出するオプションなのだが、 それらを利用したおもろいTipsが紹介されている。 uniq の -d と -u - メモ帳 # a, b に共通な行を抜き出す cat a b | sort | uniq -d > common # a にだけ含まれる行を抜き出す cat a b | sort | uniq > all cat a all | sort | uniq -u >only_in_a (中略) 存在意義がわからなかったオプションの使い道を見つけたときは妙に感動する。 僕が、uniq のこれらのオプションを知ったのは、 無能上司に教えてもらったときだ。懐かしい。 uniq -c に鳥肌が立ったのが昨日のように思い出される。 通称アルファギークの Da

  • d.hetima

    ようこそゲストさん ブログトップ 記事一覧 ログイン無料ブログ開設 d.hetima

    agw
    agw 2007/01/24