bit

複数のNICを持つ場合のデフォルトゲートウェイ

先日、仮想Linuxマシン(CentOS7)に複数のネットワークインターフェイス(以下、NICa、NICbとする)を持たせて、NICbが接続している側のゲートウェイをマシン全体のデフォルトゲートウェイ(以下、デフォゲ)にしようとしたのに、起動時にどうしてもルーティング…

bashのwhileループ内の変数をループ外で使う

化石みたいな問題。 よく知られていることだが、下記のような各行を足し算するシェルスクリプトを書くと、最後の結果が0になってびっくりする。 $ cat get_nothing.sh __calculate_total() { local total=0 fpath=$1 cat $fpath | while read line; do total…

ANTLR v4 の文法ファイルのサンプル

最近までいろいろ ANTLR v4 をいじっていて、ようやく文法ファイルの書き方がわかってきた。 でも初心者向けの解説記事を書けるほど頭の中がこなれていないので、サンプルだけ示すことにする。こんなファイルを考える。 "This" "is a " "\"quoted\" text." "…

ジョギング音楽

ジョギングのときに聞いている曲の紹介。2年前に書いた記事から、だいぶ変わったので再編集。 曲名 アーティスト名 BPM リンク Holy Ground Taylor Swift 156 iTunes / Youtube I'll Fight Daughtry 156 iTunes / Youtube Blurry Puddle of Mudd 157 iTunes …

Permutation: Javaでの順列組合せの列挙

順列を全部生成するコードを書く必要があって世の中のコードを探したのだけど、あまりきれいなコードがなかったので自分で書いた、単なる備忘録的記事。 まあ、このコードがきれいかというと、うーん、でも使いやすさとシンプルさでは、いろいろ検索した中で…

NATなKVMとJava JPDAデバッグ

技術ネタとしては基本レベルの話ではあるのだが、知らない人は本当に知らなくてちょっと萎えるので、今後の私の負荷を下げるために、NAT経由でのJPDAデバッグの話を書いておく。 # 文章の分かりにくい部分を修正。(2/15)開発用 Windows PCと試験用 Linux サ…

Apache antのjavaタスクのarg要素に空白を含むパスを複数指定するには

antもANTLRも今更感はあるけど、久しぶりにいじると楽しい。でも、結構はまる。文法ファイル(*.g4) が複数あって、かつパスに空白が含まれる場合(Google Driveとか)に、java タスクの arg 要素で pathref 属性を使おうとすると、ant が空白でパスを切ってし…

VirtualBox ネットワーク設定

(12/10) 再度見てみたら、NAT Networkのところも問題なく接続できていた。確認方法がいまいちなだけだった。というわけで、この記事はあたかも最初からうまく設定できてたように書き直す。 # 嘘はついていない。あくまで確認が不足していただけ…。(3/8) バー…

WindowsのVIMで開発しているスクリプトをリモートのLinuxで動作確認するために半自動でSCPする

VIM

というありがちなパターン。WinSCPがインストールされている前提で、その keepuptodate コマンドでもいいんだけど、今回は反映タイミングは制御したかったので、初VIMスクリプトの練習として書いてみた。といっても、パスセパレータのエスケープが面倒だった…

CSV のヘッダを動的に取得

ひさびさ、PowerShellネタ。 PS > cat .\w.csv | ConvertFrom-Csv |% { $r = $_ $headers = ($_ | Get-Member |? { $_.MemberType -eq "NoteProperty" } |% { $_.Name }) $headers |% { "{0}: {1}" -f $_, $r.$_ } "-----" }各行を処理するごとに、$headers …

部分クイックソート

久しぶりに勉強。配列の一部だけをソートする部分ソート(partial sort)。参考にしたのは、ぐぐって見つけた論文と、ロゼッタコードのページ。たぶんこれでいいと思うけど。 sortRecursively(array, 0, array.length - 1, lowerBound, upperBound); private s…

Rubyエンコーディング

Rubyを時々触るのだけれど、こんなプログラム: # -*- coding: utf-8 -*- puts "あいうえお" を組んで、実行すると PS D:\home\iwsttty\> ruby .\puts_japanese.rb 縺ゅ>縺・∴縺こうなる。で、あれ?と思って、ああ「-U」オプション忘れてたと気づく。国産言…

PowerShellでプロクシ設定

ぐぐっても意外と情報がなかったのでメモ。 > Set-Item -path Env:http_proxy -value http://proxy.youroffice.co.jp:7777 > $Env:http_proxy http://proxy.youroffice.co.jp:7777 > gem install nokogiri Fetching: nokogiri-1.5.5-x86-mingw32.gem (100%) …

DVDラベル印刷するときの見栄えの良いフォント

個人的な好みだけど。タイトル(中)は、「Meiryo UI」サイズ18。下の図だと「CentOS release 6.2」のところ。 タイトル(小)は、「Courier New」サイズ11。「x86_64 Disc1」のところ。

Excelで、罫線グルーピングを楽勝化(自動化)する

Javaパッケージ一覧だの、テストケース一覧だの、大分類、中分類、小分類したデータを Excel で罫線を使ってちまちま書くのが好きな人が、他人にそのExcelを渡してこれで編集してなどと無駄な苦労を共有したがって至極迷惑なので、条件付き書式というものが…

ジョギング音楽

(2014/5/9) 新しく2014年バージョンを公開。→こちら。私がジョギングのときにiPodで聴いている曲を紹介。BPM 160前後の洋楽が中心。 曲名 アーティスト名 BPM リンク Crawling Back To You Daughtry 151 iTunes / Youtube Feelin' Way Too Damn Good Nickelb…

ダイワダイレクトから他の証券会社に株を移すぞ

大和証券「ダイワダイレクト」の口座から、他の証券会社の口座に株を移管する時に大多数の人が記入するであろう「特定口座内保管上場株式等移管受付整理票」の「移管元お取引店名」および「移管元お取引店の所在地」は、それぞれ「PB部」「東京都千代田区…

ネットワークインタフェイス一覧

Linuxのネットワークインタフェイス一覧を取得する話。 ifconfig コマンドの出力がパースしにくい*1ので、もう少し簡単に取得できないかと調べた。ifconfig のソースコード*2読んだだけだが、役に立つ人もいるかもしれないので書いておく。 先にオチを言って…

Perl の eval で Java の try〜catch を実現したい場合に注意すること

Java などの try〜catch 構文を Perl で実現するには、eval() 関数を使えばよいというブログを見かける。間違ってはいないのであるが、陥りやすい罠がある。プログラムを組む上で、エラー処理は非常に重要なので、ここに記載しておくことにする。例として、J…

ローマ字っぽいアルファベット表記を見つけるための正規表現

アルファベットの並びがローマ字っぽいものを見つけるための正規表現。 人名がずらっと並んでいるときに、日本人名を見つけたかったので。 if (/^(\s*(((([bdghjkmnpstrz])\5?)?y?([ei]|[aou]h?))|ss?h[aiuo]|cc?h[aio]|tt?su|wa|fu|n)+){1,2}\s*$/i) { chom…

video test

Windows7 で VMwareの NAT 接続ができないとき

Windows7 に VMWare Server を乗っけてNAT接続するのに、少し苦労したのでメモ。 といっても、他のブログにたくさんやり方が載っているので、詳細は割愛。結局こういうことに違いない。↓ (1) ICS設定は、インターネットに出ていく「ローカルエリアネットワー…

glibc regex.h

c

普段Perlを使ってたせいか、C言語で設定ファイルを読み込ませる処理を書いたとき意外と面倒だったので、その使い方をメモ。設定ファイルごときにPCREは大袈裟と思って、glibc の regex にしたせいか。いずれにせよ、ウェブ上の情報が少ない…。まずは、読み込…

マルチスレッド+libevent

スレッドとファイルディスクリプタが一対一のパターン。 typedef struct { pthread_t th; struct event_base * ev_base; struct event ev; } worker_t; static worker_t * workers; static void _reset_event_handler(worker_t * w, int fd); static void _e…

iPhone最適化ページのあるサイトリンク集

(iPhoneだけでないスマートフォン版も含む) コンピュータ系ニュースサイト マイコミジャーナル http://i.journal.mycom.co.jp/ cnet japan http://m.japan.cnet.com iPad iPhone Wire http://i.if.journal.mycom.co.jp/ 4gamer.net http://www.4gamer.net/ m…