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での順列組合せの列挙

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

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スクリプトの練習として書いてみた。といっても、パスセパレータのエスケープが面倒だった…

部分クイックソート

久しぶりに勉強。配列の一部だけをソートする部分ソート(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%) …

ジョギング音楽

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

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

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

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

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

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

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

glibc regex.h

c

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