Skip to main content

Posts

Showing posts from 2014

Sqlite3 Tips 1

# import from csv sqlite> .separator , sqlite> .import id_q4.csv q4 # output to csv sqlite> .mode csv sqlite> .output ***.csv sqlite> .select * from master; .mode html もある # シェルスクリプトを使って、SQLiteのレコードを取得する #!/bin/sh SQL="SELECT * FROM table_name" COMMAND="sqlite -separator , database_name" echo $SQL | $COMMAND ## loop for i in {1..35}; do     echo "=================== q${i} =================="     SQL="SELECT customer_id, q${i} FROM master;"     #echo $SQL | $COMMAND | sed -e "s/\|/,/"  > id_q${i}_tmp.csv     numelem=`echo "select numelem from label where name='q${i}';" | $COMMAND`     #python extract.py id_q${i}.csv ${i} ${numelem} > dump${i}.csv done # sql read sqlite> .read createtable.sql

間接層

間接層を入れる事は複雑化ではない。 間接層は理解を助けるものだと思う。 例えば、鉛筆でものを書く時、炭素が・・・とか木の繊維が・・・とか素材レベルまで意識する事は無いだろう(勿論、意識する人はいるしそれはすばらしいことだと思う)。 それは鉛筆という間接層が素材と自分の間に居てくれるから、自分は詳細を意識せずともものを書くという目的を達せられる。 確かに、使いづらい道具や歪な形をしたものがあったりする。それでも間接層に躊躇してはいいものが出来ないと思う。 何度も作るうちに、いい形になる。作らないといい形にさえならない。 > ソフトウェアとは間接層を入れる事で柔軟さを実現する だったか?(「リファクタリング」より) あくまでコンテキストによる。それが大前提です。 解析用スクリプト等では、敢えてベタ書きにしたりする。

play framework 環境を作ってみた

play2.2 の環境(eeepc debian wheezy)を作った。 1. play のダウンロード     http://www.playframework-ja.org/download   2. java-7-openjdk-i386 のインストール/設定     $ sudo apt-get install openjdk-7-jdk     $ sudo update-alteratives --config java         -> java-7-openjdk-i386 の選択 3. play 環境作成     $ unzip play***.zip > /dev/null     $ ./play***/play new project名        1. scala の選択 4. 取り敢えず実行してみる(プロジェクトディレクトリで)     $ ../play***/play run 5. localhost:9000 にアクセス→コンパイルが始まる(ちょっと時間がかかる)。     できたらサンプルページが表示される。

nkf

nkf ファイルの文字コードを判別する # nkf -g hoge.txt EUC-JP 既存のファイルの文字コードを変更する # nkf -w --overwrite hoge.txt # nkf -g hoge.txt UTF-8 既存のファイルの改行コードを変更する “-L”オプションを付けて,続いて”u”を付けた場合は改行コードを”LF”に変更できます。同様に”w”は”CR+LF”,”m”は”CR”に変換します。 # nkf -Lu --overwrite hoge.txt ディレクトリ内のすべてのファイルの文字コード・改行コードを変更 ディレクトリ内の拡張子が”txt”のすべてのファイルの文字コードを”UTF-8″に、改行コードは”LF”にそれぞれ変換する場合は下記コマンドを実行します。 # nkf -wLu --overwrite *.txt -j(省略可能) : JISコード(ISO-2022-JP)を出力 -e           : EUCコードを出力 -s           : Shift-JISコードを出力 -w           : UTF-8コードを出力(BOM無し) -Lu          : unix改行形式(LF)に変換 -Lw          : windows改行形式(CRLF)に変換 -Lm          : macintosh改行形式(CR)に変換 -g(--guess)  : 自動判別の結果を表示 --overwrite  : 引数のファイルに直接上書き 元は: http://linuxserver.jp/linux/nkf%E3%81%A7%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AE%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89%E3%81%A8%E...

シェルスクリプトの最初にすべきこと

いやはやありがとうございます。備忘録としてリンクさせていただきます。 > 実質的に最後の今日のお第は、シェルスクリプトの最初にすべきことです。 Perl スクリプトで use strict; use warnings; がお約束になっているように、 シェルにもいくつかお約束があります。  http://fumiyas.github.io/2013/12/24/initialize.sh-advent-calendar.html

terminal とクリップボードでデータの受け渡しをする - ではないが、screen のバッファやり取り

screen バッファも追記 ** screen *** screen -U : UTF8 で起動 *** ^z+[ : コピーモードに入る *** ^z+] : ペースとバッファの内容を現在のウィンドウに出力する *** ^z+> : ペースとバッファの内容をファイルに書き込む(デフォルトで /tmp/screenexchange)            ファイルは .screenrc bufferfile で変更できる *** ^z+< : ファイルの内容をペースとバッファに読み込む *** ^z+= : writebuf のファイルを削除 ***  コピーモード **** スペース : 現在位置にマーキング **** Y : 現在行をマークしてコピーモードを終了する **** y : 現在行の戦闘と行末をマークしてコピーモードは継続 **** W : 現在位置にある単語をマークしてコピーモードを終了

eeepc 901 に Wheezy を入れる

eeepc 901 に Debian をインストールする。 ここを参照して、 https://wiki.debian.org/DebianEeePC/HowTo/InstallUsingStandardInstaller ダウンロードした iso をUSBメモリに書き込む。 # dd if=debian-7.*-netinst.iso of=/dev/sdb # where sdX is the device your USB media is using リブート時に ESC を押してブートメディアをUSBとする。