otaguro のアーカイブ

MySQLとPostgreSQLで他のテーブルの値をテーブルにコピーする方法

2017年1月12日

例えば ユーザー情報のテーブル(TURBINE_USER)から、disabledの値が'F'でlogin_nameが'admin'と'anon'以外のユーザーのuser_idを選択して、別のテーブル(EIP_T_ACL_USER_ROLE_MAP)にid(primary key),user_id(integer),role_id(integer)のデータを作成するには、次のようにします。 ### MySQL ``` INSERT INTO EIP_T_ACL_
続きを読む

Github上でgit blameを繰り返し行うのをChromeのユーザースクリプトで楽にする

2017年1月5日

あるコードを追加したコミットを見たいときに、改行コードの変更が全体を覆っているとかで、blame一回で確認できない場合があります。 そういったときは、 1.Blameでコミットを見て、 2.historyを開いて、1のコミットの1つ前の「<>」(マウスオーバーするとBrowse the repository at this point in the history)と出るボタンを押して、 3.さらにBlameのボタンを押して、コミットを見て…
続きを読む

AipoのWebメール受信におけるJavaのスレッドの排他制御

2016年12月15日

AipoのWebメールポートレットで、メールを受信中には"メール受信サーバに問い合わせ中です。"と表示されますが、 この状態を保持しているのに使っているALStaticObjectの振る舞いがよく分かっていなかったので調べました。 *** メール受信中かどうかは、 ``` WebMailSelectData.getStatStr() →ALPop3MailReceiveThread.getReceiveMailResultStr() →ALPop3Mai
続きを読む

Pythonで確率分布に従う乱数生成

2016年12月15日

Pythonで確率分布に従う乱数を生成するにはscipy.statsが便利です ``` from scipy.stats import gamma from scipy.stats import beta from scipy.stats import bernoulli from scipy import stats import numpy as np #乱数のseedを設定 np.random.seed(1234) #ベルヌーイ分布(歪
続きを読む

Eclipseでターミナルを開くプラグインを作ってみた

2016年12月7日

StartExplorer Eclipse Plug-inでよくターミナルを開いているのですが、指定していたフォルダの位置ではなくホームディレクトリで開くようになるバグが起きるようになりました。 良い機会なのでEclipseのプラグイン開発の勉強がてら、Macで「ターミナルを開く」プラグインを作ってみました。 # 1.Plug-in Projectを作成する * 「File>New>Project...>Plug-in Project」を選択 * プロジェ
続きを読む

コマンドのヘルプを活用する(Windows)

2016年11月24日

前回のハック[コマンドのヘルプを活用する(LINUX)](http://hacknote.jp/archives/23863/)のWindows版です。 Linuxのmanコマンドは、Windowsではhelpコマンド Linuxのーーhelpオプションは、Windowsでは/?オプション(または-?オプション) ということのようです。 *** # helpコマンドの使い方 例: ``` help dir help cd `
続きを読む

コマンドのヘルプを活用する(LINUX)

2016年11月24日

tarのオプションなんだっけとか忘れたときにググってしまいがちですが、 manコマンドかーーhelpオプションを活用するとサクっと調べられるそうです。 *** # manコマンドの使い方 例: ``` man ping man tar ``` 抜けるときはq *** # helpオプションの使い方 例: ``` ping --help tar --help ``` *** pingとかは何も引数を与え
続きを読む

Aipoでユニットテストを書いてみる

2016年10月20日

ToDoUtilsのテストを書いてみた ## 準備 1. ナビゲータで、aipo/portlets/todo/src/test/java/aipo/フォルダを右クリック「新規→その他→Java→JUnit→Junitテスト・ケース」を選択。「次へ」を押す 2. 名前:ToDoUtilsTest、テスト元クラス:ToDoUtilsを指定し、setUp()・tearDown()のメソッド・スタブを作成にチェックを入れる 3. コードを書く ``` import
続きを読む

Pythonで再帰的にファイル検索

2016年10月20日

再帰的に処理をする部分をPythonで書いてもいいけれど、 subprocessでLinuxのコマンドを呼び出すと楽です。 ``` #ファイル検索 import subprocess findOutputs = subprocess.check_output(["find", "./data","-name", "*.txt"]) findOutputs=findOutputs.split("\n") findOutputs.sort()#出力を見やすくソー
続きを読む

Github Pagesを使ってみた

2016年10月6日

Github Pagesを使ってみました。 一瞬でWebページを公開できます。 ``` 1. https://github.com/{ユーザー名}/{リポジトリ名} の画面でgh-pagesというブランチを作成 2. https://github.com/{ユーザー名}/{リポジトリ名}/tree/gh-pages の画面で「Create new file」ボタンを押す 3. 「Name your file」欄にindex.htmlを入力。タグを
続きを読む

javascriptで和音を鳴らす

2016年10月6日

ちょうどいい和音を鳴らすツールがなかったので、自作しました。 OSによらず実行できるようにjavascriptで書いてます(デスクトップのChromeで動作確認済み)。 MIDI.jsというライブラリを使えば、javascriptで任意の音を鳴らせます。 ### javascriptをダウンロードする 単音を鳴らすデモ https://galactic.ink/midi-js/Basic.html を「Webページ、完全」でダウンロード。
続きを読む

他のブランチにコミットした内容を、チェックアウト中のブランチにコミットし直す方法

2016年9月15日

派生元のブランチの指定を間違えたブランチに、コミットしてしまった時なんかに便利です。 コミットしたいブランチAをチェックアウトした状態で、 ``` git cherry-pick {他のブランチBのコミット番号} ``` とすると、ブランチBのコミットと同じ内容をブランチAにコミット出来ます。 参考:http://rfs.jp/server/git/gite-lab/git-cherry-pick.html
続きを読む

Windows10でWindowsUpdateをショートカット・コマンドで開く

2016年9月15日

Windows10になってから、WindowsUpdateのショートカットが行方不明になって開くのが面倒になりましたが、次の方法で一発で開けるようです ``` コマンドでstart ms-settings:windowsupdateを実行する ``` または ``` URL欄にms-settings:windowsupdateを設定したショートカットを作成する ```
続きを読む

Windowsでスマホの通信内容を確認する方法

2016年9月8日

有線LANと無線LANを備えたWindowsを、無線LANルータとして動作させてパケットキャプチャします。 1. [Windows付属の機能だけでPCを無線LANルーター化](http://antop.0hs.org/186)を行う 2. スマホをWindowsの無線LANルータに接続 3. WindowsにWiresharkをインストールして「ワイヤレスネットワーク接続2」のパケットを取得します Wireshark の使い方の参考:http://beg
続きを読む

Cayenneのbindを含むクエリログをクエリに変換する

2016年8月25日

[実行されたsql文を監視する](http://hacknote.jp/archives/1515/)で取得したクエリログと同じクエリを PgAdminとかで実行したい時がよくありますが、 ``` SELECT t0.CREATE_DATE, t0.CREATE_USER_ID, t0.NOTE, t0.OWNER_ID, t0.PARENT_ID, t0.TOPIC_NAME, t0.UPDATE_DATE, t0.UPDATE_USER_ID, t0.CATEG
続きを読む

Redmineのチケットの題名とURLをコピーするブックマークレット

2016年8月18日

チケットの詳細のページで簡単にチケットの情報(題名とURL)をコピーするためのブックマークレットです。 2回のコピペが1回で済むようになります。 ``` javascript:(function(){window.prompt("","%E3%80%90%E3%83%81%E3%82%B1%E3%83%83%E3%83%88%E3%80%91\r%E3%80%80"+document.getElementsByClassName("subject")[0].ch
続きを読む

WIndowsで(Linuxのfindのような)ファイル検索コマンドを使う

2016年8月18日

[Linux Windows find]で検索しても、Windowsのファイル内のテキストを検索するfindコマンドが出てきてしまって、 なかなかwhereコマンドのほうが出てこなかったので… # Linuxの場合 ### ファイルの検索 ``` find . -name "*.pdf" ``` で、カレントディレクトリ以下のファイルを再起的に検索 ### ディレクトリの検索 ``` find . -type d -name "direct
続きを読む

UINavigationControllerを遷移済みの状態で開く方法

2016年8月4日

以下のようにself.addChildViewController()を複数回実行すると、 FirstViewControllerからSecondViewControllerに遷移した状態になります。 (FirstViewControllerへは、self.navigationController?.popViewControllerAnimated(true)  で戻ることができます。) ``` import Foundation import UIK
続きを読む

Pythonのlibrosaで楽曲中に含まれている12半音の強さを出力する

2016年7月28日

1.WAVEファイルを読み込む ``` import librosa filename = "test.wav" y, sr = librosa.load(filename) ``` 2.12半音の強さ(クロマグラム)を取得し、matplotlibで出力する ``` import matplotlib.pyplot as plt pos=20 #クロマグラムを取得する楽曲の位置を指定 y_harmonic, y_percussive = l
続きを読む

Pythonで入れ子になっているデータ構造を見やすく出力する

2016年7月21日

jsonを使います ``` hoge=["5あいうえお","4かきくけこ",("3さしすせそ",{"2たちつてと":1,"1なにぬねの":2})] ``` のようなデータがあったとして、普通に出力すると ``` print(hoge) ['5あいうえお', '4かきくけこ', ('3さしすせそ', {'1なにぬねの': 2, '2たちつてと': 1})] ``` ``` import json print(json.dumps(h
続きを読む