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

Linuxで作成したテキストファイルをWindowを使ってる人に送るときによくやること

sh

# 文字コードを調べる nkf -g file_name.txt #改行コードを確認する od -c file_name.txt # 改行コードをLF/CRのものを生成する nkf -Lw file_name.txt > output.txt # そのファイルの改行コードをLF/CRに変更してしまって良いなら nkf -Lw --overwrite file…

HF デザインパターンの2章をpythonで書いたもの

# coding: utf-8 from deco import print_fn_name class Subject(object): def __init__(self): self._observers = [] def register_observer(self, observer): self._observers.append(observer) def remove_observer(self, observer): if observer in self…

カップ麺.js

<div id="cnt"></div> <script type="text/javascript"> var cnt = 0; var div = document.getElementById('cnt'); var countUp = function(){ if(cnt > 180){alert('end!');} cnt += 1; div.innerHTML = cnt; setTimeout(countUp, 1000) } window.onload = countUp </script>

VPS上にgitのリポジトリ作成

sh

## remote側 su # -> rootに adduser git passwd git # -> パスワード設定 su git cd ~/ mkdir hoge.git cd hoge.git git --bare init ## local側 cd ~/dev/hoge git init touch README.txt git commit -m 'first commit' -a git remote add origin ssh://gi…

git 間違えてcommitしたときに「今のなし」にするの

sh

いつもgitでコミットする際に -a オプションをつけてやっている git commit -m "コミットメッセージ" -a これをつけるとgit add .してからコミットするのと同じになるので 面倒省けてでよいよねと思うのだけれども、 手癖になっていて時々意図しない-aを入れ…

perlの-a(awk)と-F(field)オプション

aオプションをつけるとperlでawkみたいなことが出来る 区切り文字を-Fオプションで指定して使用する tomotomo:sakamoto:sugoi kanakana:kanasashi:mottosugoiみたいな感じで並んでいるテキスト(sugoi.txt)があるとして、 perl -F":" -anle 'print $F[1], "";…

node.js/coffeescript で、jQueryを使ってスクレイピング

chreerioもあるようですが、jQueryのtraverse機能を使いたかったので jsdom + jquery でスクレイピングしたものを操作します。 request = require 'request' jsdom = require 'jsdom' jquery = 'http://code.jquery.com/jquery-1.8.0.js' RequestObj = uri: …

javascript、Dateのコンストラクタ引数おかしいと思うんですが。

arg = "2012-9-2".split('-') // -> [2012, 9, 2] new Date(arg[0], arg[1], arg[2]) // -> Mon, 01 Oct 2012 15:00:00 GMT #2012年の8月1日になる えー。 9って入れて8月って、えー。

node環境だとMath.floor使うのと<<でビット演算してもあんま変わんない

オライリー本で「小数点以下の切り捨てはMath.floor使うより nodeで実行してみるとあんまり差がない。 pi = 3.14 bitshift = -> pi<<0 floor = -> Math.floor(pi) funk_timer =(fn)-> start = new Date for i in [0..100000000] fn() console.log (new Date …

DBD::SQLite::db do failed: unable to open database file at

perl cgi から sqlite にアクセスして読み書きする cgiをあれしていたが、いままで作業してきたディレクトリを ごっそり別ディレクトリに移したら上記のようなエラーメッセージが出た。ページの表示を出来るってことは、 読み取るときはエラーにならず、書き…

Backbone.jsの勉強

(function() { var User = Backbone.Model.extend({ initialize:function (argName) { // new 演算子でオブジェクトが生成されると // initialize関数が呼ばれる console.log('User obj created!'); // セッターとゲッターを使ってプロパティを管理する this…

サクラの月額125円のサーバーでcgiが動かしてみた。

ここの手順をもとにひな形のソースを入手して http://d.hatena.ne.jp/perlcodesample/20101221/1300165343ここでCGIの仕組みをフムフムしながらセットアップした http://home.e02.itscom.net/shouji/raku/kouza/doc/doc-8.htmlサーバを借りて、ローカルで動…

macでパスワード付きzipファイルを作る

sh

zipコマンドに-Pオプションをつけて、引数にパスワードを渡せば出来る。 $ zip -P password sakamoto/Desktop/sakusei_file.zip assyukusuru_file1 assyukusuru_file2,,,

python-amazon-product-api にあいさつをした

$ pip install python-amazon-product-api $ pip install lxml # -*- coding: utf-8 -*- from django.core.management.base import BaseCommand from django.conf import settings from amazonproduct import API, AWSError class Command(BaseCommand): def…

mac os lionでさくらのVPSを借りるとVNCコンソールがどうのこうのでなんとかした

単純にjavaの設定がうまくなかったアプリケーション → ユーティリティ → java preference → アプレットとかを有効にする と設定をいじったたのちにVPSのリモートコンソール画面に行ったところ VNCコンソールとやらが無事起動。

1〜100までのランダムな数値を出力するワンライナー

perl面白い。難易度曲線絶妙。 perl -e 'foreach(0..10){print int(rand(100)+1)."\n";}' 業務に役立つperl まだ30%くらいしか読んでいないけれども とても分かりやすくていい本。新しいし。perlでゴリゴリwebサイトつくる気はないけど、 正規表現とかワンラ…

fileinput モジュール便利

数値のみが改行区切りでたくさん入っているテキスト。 入ってる数値を全て足し算しなくてはいけなくなって、 僕のmacにはエクセルが入っていないので(少し時間もあったので)pythonで書いた。 calc.py import fileinput print sum([int(line) for line in f…

入力の文字列が0-100までの整数か否かを返す関数

久しぶりに正規表現を書いてやっぱり面白かったのでメモ is0_100 = function(ipt){ var ret = ipt.match(/^[1-9]\d?$|^0$|^100$/) return Boolean(ret); } なんかもう pythonとjavascriptのソースを行ったり来たりしてると 変数にvarをつけ忘れがち

python の is と == は別物

a is b a is bは aとbが同じオブジェクトを参照している場合にのみTrueを返す。 a == b a == b は__eq__などのメソッドを通して型変換が行われて比較がされる憶えておくべきこととしては 通常の比較は == を使用する。 ただし、Noneと比較を行う際には高速な…

coffeescriptでファイルに変更があったら自動的にコンパイルするコマンド

自分は下記のコマンドをうったらうまい感じになった。 coffee -cw /var/work/konpairusitai/fairu.coffee -w が -watch (ファイル変更を監視)で -c が -conpile(コンパイル) ctrl + s してブラウザを更新したら、反映されてる形

commコマンド便利

commコマンドって初めてきいた二つのファイルを比較して 1、一つ目のファイルにだけあるもの 2、二つ目のファイルにだけある 3、両方にあるというふうに出してくれる たとえば a.txt 1 2 3 4 5b.txt 3 4 5 6 7っていう二つのファイルがあるとして comm a.…

改行コードでハマって悔しかった

sh

windowsとmacとlinuxで改行コードは全部違う。 パッと見だとどの改行コードが使われてるか分からないので od コマンドで確認する od -c hatehate.txtなんか文字列がバーッと出てくる\r \n などのように改行コードが2重に入れられていたら それはビルゲイツの…

htmlは下記1行のみで、全てjsでページが作られるようなものをつくろうとして、少し困った。

htmlは下記1行のみで、全てjsでページが作られるような ものをつくろうとして、少し困った。 <script type="text/javascript" src="hoge.js"></script> 下記のようにDOMを追加しようとすると[document.body is null]とか出ちゃう。 document.body.appendChild(DOM) // -> document.body is null そりゃそうだ。body…

Dropboxのフォルダ内に置かないで共有する方法

Dropboxはmacであれば少し便利に使えます。 共有したいフォルダを移動することなく共有することが出来ます。 シンボリックリンクを使用するやり方です。 ln -s -T /Users/kyouyuusitai/dexirekutori/dird /Users/username/Dropbox/MyDocument/ 友人の画像フ…