技術メモのかけら

内容はもとより調べたことすら忘れてしまうので個人的なメモです。とにかく短く、結論だけ書いていきます。

jconsoleでリモートのTomcatを監視する

毎度忘れるのでメモしておく。 事前準備としてTomcat起動のjavaオプションに以下を追加しておく。 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=7900 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.aut…

portの使用状況を確認する

すぐ忘れるのでメモ。以下のコマンドで一覧を表示できる。 lsof -i ポートを指定して調べることもできる。 lsof -i:<port_not></port_not>

コンフリクト時に共通の祖先の情報を書き出す

git

あらかじめgit configしておく。 git config --global merge.conflictstyle diff3 そうすると、コンフリクト時に 共通の祖先の内容も書き出される。 func main() { <<<<<<< HEAD fmt.Println("h2") ||||||| merged common ancestors fmt.Println("Hello") ==…

マージ済みのブランチを一括削除するワンライナー

git

git branch --merged | grep -v '*' | xargs -I % git branch -d %

Macで古いバージョンのJavaをアンインストールする

インストールされているJavaのバージョンを確認する $ /usr/libexec/java_home -V Matching Java Virtual Machines (2): 1.8.0_40, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home 1.8.0_05, x86_64: "Java SE 8" /L…

psqlのバックスラッシュコマンドで実行されているSQLを確認する

-Eオプション付きでpsql を起動すると、バックスラッシュコマンドの裏で実行されるSQLを確認できる。 $ psql -E psql (9.1.14) "help" でヘルプを表示します. bill=# \dn ********* クエリー ********** SELECT n.nspname AS "Name", pg_catalog.pg_get_user…

第3回 日本Seleniumユーザーコミュニティ勉強会に行ってきた

2016/02/06 第3回 日本Seleniumユーザーコミュニティ勉強会 昨年のテスト自動化カンファレンスに続き、テスト系のカンファレンスに行ってきました。 第3回日本seleniumユーザーコミュニティ勉強会 from Nozomi Ito tgtr.ListWidget({id:'935012',url:'http…

systemctlの超基本コマンド

ランレベルがなくなり、ターゲットやらユニットになったりしたそうだが、 詳細はさておき、ぱっと出てこないのよく使うコメンドをメモ。 # サービスを起動させる(service httpd startの代わり) systemctl start httpd # サービスを停止させる(service htt…

ファイルをgrep置換する

sed -i "s/abc/123/g" hoge.txt Macでやるとsed: 1: "hoge.txt": extra characters at the end of commandとか怒られた挙句、ターミナルをクリックすると変な記号がコマンドラインに挿入されるようになったのでターミナルを一度落とす羽目になったけど原因は…

ヒアドキュメントの出力をファイルに書き出す

ヒアドキュメント自体たまにしか使わないし、ファイルの出力の仕方も直感的に出てこないのでメモ。 cat <<EOF > php_info.php heredoc> phpinfo(); heredoc> EOF</eof>

改行コードをCRLFからLFへ変換する

trコマンドでCRを削除すれば良い。 tr -d \\r < hoge.txt > huga.txt

CentOSのバージョン確認

メモ:CentOSのバージョン確認 # cat /etc/redhat-release CentOS release 6.5 (Final)

nilを判定する

type Point struct { x, y int } func main() { point := Point{x: 20, y: 50} if point == nil { fmt.Println("point is nil") } } こんな感じにpoint == nilと比較するとエラーなります。 cannot convert nil to type Point 要は値とnilを比較するのがダメ…

ファイルの文字コードを調べる

nkf --guess test.txt

Subversionのパスワードを変更

毎回パスワードを入力するのは面倒なのでTortoiseSVNを使うときパスワードを保存するようにしているのだが、Subversionアカウントのパスワードを変更したら問題が発生した。 SVN Updateするとパスワードを聞かれたので新しいパスワードを入力。 パスワード保…

Textareaをリサイズできないようにする

Chrome、Fire Foxはテキストエリアがリサイズできてしまう。 あいうえお かきくけこ さしすせそ 可能なのは良いけど、デフォルトがリサイズ可能なのは困るケースが結構ある。 調べたら、こんな感じにCSSで制御可能なようだ。 textarea { resize: none; } あ…

SafariでOsakaフォントでBold表示すると直後に変な余白ができる

ネットで調べても分からなかったが、MacOSのSafariでOsakaとかOsaka-Monoをfont-weight:boldで表示すると直後に変な余白が空いてしまう。 ここのフォントは`Osaka`です。ここは太字でけど、MacのSafariで見るとこの後に変な余白が開いてしまうのですよ。ここ…

IE9でoverflow:autoしたボックス内のテーブルでhoverするとレイアウトが崩れる

テーブルにhoverするとテーブルの下にある要素がどんどん下に下がっていく変なバグがあった。 IE7、8、10、11は大丈夫なのになぜかIE9だけで起きる。 結果的にはIE9のバグっぽい。 問題のテーブルは横長になるので、overflow-x:auto;にしたdivで括っているの…

Webkitで罫線が正しく表示されない

border-collapse:collapse;とcolspanを組み合わせると罫線がおかしくなるバグがあるようです。 自分が出くわした事象はtableの4辺に罫線を指定しているのに、colspanした直後のcolspanしていない行のborder-rightが表示されていないというものでした。 sepa…

placeholderについてのTIPS

css

サポートしているタグ input(type=text, password, search, url, tel, email), textareaで使える。 DOCTYPEはHTML5じゃなくても問題ない。 サポートしているブラウザ 主要なブラウザは問題なく使えるが、IEは10からサポートされた。 スタイルを指定しないと…

データを16進でダンプする

trimで消えない謎のスペースがあって、何なのか16進で見たいのでやり方を調べた。 select encode(name::bytea, 'hex') from human; これで調べたら, C2A0が入っていることが分かった。 HTMLで&nbsp;ってのはよく使うけど、これは文字コードのNBSP。 アプリの…

シェル変数の文字列展開

パターンにマッチする文字を置換文字に置き換える 書き方: ${変数/パターン/置換文字} $ v="newItem" $ echo ${v/new/old} oldItem 先頭から文字列にマッチした部分を取り除いて出力する 書き方: ${変数#文字列} $ v="newItem" $ echo ${v#new} Item 末尾…

ファイルの拡張子を置換する

ファイルが1つだけだったらmv test{.log,.txt}のようにシェルのブレース展開を利用して行える。 mv test.log test.txtって普通の書き方と比べて楽になっている訳じゃないが、スペルミスが減るところが良いかも。 あと、ファイルが沢山ある場合はLoopを回して…

キャメルケース<=>スネークケース変換

右クリックして選ぶ方法もあるけどショートカットを覚えてしまった方が断然楽 ctrl+alt+K

簡単なオブジェクトのディープコピー

オブジェクトを楽にディープコピーするコード。 性能面の問題やSerializableなメンバーじゃないとコピーされないとか問題があるけどメモ。 private <T> T deepCopy(final T target) { final ByteArrayOutputStream bos = new ByteArrayOutputStream(); final Ob</t>…

IE9で大量のテーブルを書き出すときは要注意

IE9に限って、tableを大量(何件以上がダメとか良く分からない)に書き出すと、部分的にセル位置がずれてレイアウトが崩れる問題が発生。 リリース直前でバタバタしてる中、バグチケット切られて泣きそうでしたが、例によりMS様のバグなようです。 タグ間の…

列の型をDateからVARCHARに変更する

またいつか必要かもしれないのでメモ。 ALTER TABLE table_name ALTER COLUMN column_name TYPE VARCHAR(8) USING CASE WHEN column_name IS null THEN null ELSE TO_CHAR(column_name, 'YYYYMMDD') END; USINGで条件分けをするパターンは他でも使えそう。

Office 文書内のハイパーリンクを開くと Cookie が紛失する

自分が開発しているシステムで発生した事象。 いきなり業務画面のURLを指定された場合に、ログイン画面を割り込ませる実装をSpringSecurityを使って実装しているのだが、エクセル文書内のハイパーリンクからの起動だと正しく動かない現象が発生した。 現象と…

使用中のポート番号を調べる

80番とか8080番とかよく使われるポートが競合してしまうことがありますが、どのプログラムが使用しているかを以下のコマンドで調べられる。 netstat -anob 結果は下記のように出力される。 プロトコル ローカル アドレス 外部アドレス 状態 PID TCP 0.0.0.0:…

Retinaディスプレイかどうかの判定方法

とりあえずメモ。以下で判定できるらしい。 var isRetina = window.devicePixelRatio > 1,