Googleの英語ページを日本語で表示する

例えば、Google ドキュメントからGoogle Analyticsのページを表示する場合は次のような遷移になると思う。

  1. Google ドキュメントページ上部の「ウェブ」リンクからGoogleのトップページを表示
  2. そのページの右上の「アカウント」リンクからアカウントページを表示
  3. アカウントページにある「Google Analytics」リンクからGoogle Analyticsページを表示

これだと、どこかのタイミングで英語版のページになり、いざ見ようと思ったGoogle Analyticsページが英語になってしまう。自分の場合はGoogle ドキュメントのページからウェブページに遷移した時点で英語になっている。

この場合に、英語ページをそのまま日本語にするために、同じページのどこかに言語選択のプルダウンか何かがあればいいのだが、とりあえずGoogle Analyticsのページでは見つからない。

そんなときは、次のようにしてそのページを読み直すと言語を変えることができる場合がある。

  1. ページのURLに「?」が含まれていない場合「?hl=ja」を末尾につける
  2. ページのURLに「?」が含まれている場合「&hl=ja」を末尾につける

どちらも「hl=ja」という言語設定をページに適用する、ということである。「ja」が日本語に設定する、という意味になる。

「ja」の部分を「fr」とすればフランス語に、「de」とするればドイツ語に、「ko」とすればお隣の朝鮮語になる。

EclipseでSVNコミットしたら履歴が消えた。

Eclipse上でSVNコミットしたらそのファイルの履歴が消えてしまった。そのコミット操作はModifyではなくてReplaceになっていた。

調べたのだが原因が分からない……。

ということで@miau_jpさんにtwitterで質問した。
https://twitter.com/tatakauashi/status/2128551227

と思ったら仕事中にもかかわらずすぐにレスが来た。デスク上でtwitterを開いて仕事してるの??

https://twitter.com/miau_jp/status/2128616395

いただいた回答を元に調査。で、原因ですが、ちょっとその作業を行った張本人に聞いてみたところ、

  1. SVNで管理されているファイル(例:hoge.properties)をリネームした(hoge.properties.bak)。
  2. プロジェクト全体を同期化し、hoge.propertiesをUpdateしようとしたが競合していたため、Override and Updateを実行した。
  3. hoge.properties.bakから自分が修正した記述をOverride and Updateして取得したhoge.propertiesに追記し、そのhoge.propertiesをCommitした。普通にコミットできた。
  4. hoge.properties.bakは削除した。

ということでした。
とりあえず手順まで。

Cygwinを導入する

Cygwin導入の経緯

 仕事で使ったことをきっかけに、自分のPCにも入れてみようと思った。ずっと以前、WindowsマシンでC/C++コンパイルをしたいと思ったときに、Cygwinを入れるかMinGWを入れるかで迷い、その時はCygwinの導入も煩雑さ、難しさに音を上げた記憶があったような気がする。

 CygwinWindows環境にLinuxのようなコンソール環境及びX-Windows環境を導入しようというものであるが、Linuxの構築と同様、何を入れて何を入れなくてよいか、どういう設定をすればよいか、ということに頭を悩ませ、Googleの検索窓に何度となくキーワードを入力することになる。

 今回も何度となく「検索」ボタンを押したわけだが、そうして導入したCygwin環境の流れをここに記録しておく。

 ちなみに、ここの通りに導入すると、ハードディスク容量で1.8GBほど使用する。

導入の前提

 導入の前提として、次を挙げた。

  1. ssh、scpができること
  2. opensslの鍵が作れること
  3. C/C++Javaなど、主要な言語のコンパイルができること
  4. コンソールはUTF-8であり、できたら日本語が入力できること
続きを読む

Unix系サーバでCPUやメモリ、ネットワークなどのリソースログを出力する

 Linux上で使用されるコマンド(top、vmstat、netstat)でプロセスごとのCPU・使用メモリなど(top)、システム全体のそれ(vmstat)、及びネットワークトラフィックnetstat)をログに出力する。

 topコマンドのログ

#/bin/sh

# check hoge.pid file
if [ -e ${HOME}/bin/hoge.pid ]
then
        echo Program hoge is not running.
        exit 1
fi

LOGFILE=${HOME}/performance/log/topinfo.log
INTERVAL=$1
if [ -x $INTERVAL ]
then
        # Set Default Interval time (60sec)
        INTERVAL=60
fi

# check logger's pid file
if [ -e ./topinfo.pid ]
then
        echo Already running.
        exit 1
fi
echo $$ > topinfo.pid

while [ ! -e ./topinfo_stop ]
do
        PROGRAM_PID=`cat ${HOME}/bin/hoge.pid`
        TOPINFO=`top -b -n 1 -p $PROGRAM_PID`

        TOPINFO=`echo $TOPINFO | awk '{print $27$28$29$30$31$32$33$34","$36","$38","$40","$42","$45","$47","$49","$51","$67","$68","$69","$70","$71","$72","$73","$74","$75}'`
        echo `date "+%Y/%m/%d %H:%M:%S"`,$TOPINFO >> $LOGFILE
        sleep $INTERVAL
done
rm -f ./topinfo.pid

 
 vmstatのログ

#/bin/sh
LOGFILE=${HOME}/performance/log/vmstat.log
INTERVAL=$1
if [ -x $INTERVAL ]
then
        # Set Default Interval time (5 sec)
        INTERVAL=5
fi
if [ -e ./vmstat.pid ]
then
        echo Already running.
        exit 1
fi
echo $$ > vmstat.pid
while [ ! -e ./vmstat_stop ]
do
#       SRVSTAT=`vmstat 2 2 | tail -1 | awk '{printf $4","$7","$8","$13","$14","$15","$16}' `
        SRVSTAT=`vmstat $INTERVAL 2 | tail -1 | awk '{printf ","$1","$2","$3","$4","$5","$6","$7","$8","$9","$10","$11","$12","$13","$14","$15","$16}' `
        echo `date "+%Y/%m/%d %H:%M:%S"` $SRVSTAT >> $LOGFILE
done
rm -f ./vmstat.pid

 
 netstatのログ

#/bin/sh
LOGFILE=/home/YqP5Bu8z/performance/log/ntstat.log
INTERFACE=$1
INTERVAL=$2
if [ -x $INTERFACE ]
then
        echo Usage: ntstat_logger.sh interface [interval]
        exit 1
fi
if [ -x $INTERVAL ]
then
        # Set Default Interval time (5sec)
        INTERVAL=5
fi
if [ -e ./ntstat.pid ]
then
        echo Already running.
        exit 1
fi
echo $$ > ntstat.pid
while [ ! -e ./ntstat_stop ]
do
        NTSTAT=`netstat -I$INTERFACE | tail -1 | awk '{printf ","$1","$2","$3","$4","$5","$6","$7","$8","$9","$10","$11","$12}' `
        echo `date "+%Y/%m/%d %H:%M:%S"` $NTSTAT >> $LOGFILE
        sleep $INTERVAL
done
rm -f ./ntstat.pid

コマンドプロンプトやシェルで日時文字列を作る

 Windowsのッチファイルなどで、起動するたびに違うファイル名を付けたくなることがある。その際、起動時の日時をファイル名に付加したいと思うこともしばしばだ。

 Windowsの場合(BATファイルに記述したときのみ)

@ECHO OFF
FOR /F "tokens=1-6 delims=/:. " %%a IN ("%DATE% %TIME%") DO SET DATE_TIME=%%a%%b%%c%%d%%e%%f
ECHO %DATE_TIME%

 20090114192118

 Linuxの場合

DATETIME=`date "+%Y%m%d%H%M%S"`
echo $DATETIME

 20090114192118

MySQLにCSVファイルをロードする

MySQLで、ローカルのCSVファイルなどをDBに挿入する方法。まぁ基本だけど、メモ。

load data local infile 'C:/eclipse/workspace/TestProject/data/Test_Table.csv' INTO TABLE Test_Table FIELDS terminated by ',' enclosed by '"' LINES terminated by '\r\n';

MySQL :: MySQL 5.6 リファレンスマニュアル :: 13.2.6 LOAD DATA INFILE 構文