Tetsuro Aoki のアーカイブ

build.gradleのdependencies

2016年2月16日

testCompileとcompileを使いわけることでmain以下の依存ライブラリとtest以下の依存ライブラリを別々に設定できます。 ``` dependencies { // junit testCompile group: 'junit', name: 'junit', version: '4.11' // selenium compile group: 'org.seleniumhq.selenium', name:
続きを読む

amazon linuxにgradleをインストール

2016年2月9日

``` curl -s http://get.sdkman.io | bash sh /root/.sdkman/bin/sdkman-init.sh sdk install gradle ``` gradleに関する環境変数が設定されるようなので、gradleを使う前に一度ログインし直すと良いようです。
続きを読む

Amazon linuxにfirefoxをインストール

2016年1月29日

[こちら](http://qiita.com/alingogo/items/6d5b8d28e5e063fe0b12)を利用させてもらいます。 かなり時間がかかるのでそれなりのインスタンスサイズが必要かもしれません。 ``` sudo wget -qO- https://gist.github.com/alingogo/5325484/raw | sudo bash ``` firefoxのダウンロードURLが変わった影響で上記の方法だと失敗するよう
続きを読む

awscliで情報を取ってきて整形したいときはまずfilterとqueryで頑張る

2016年1月26日

awscliでインスタンス情報を取ってきて必要な部分だけを一覧にしようと思ったのですが、これをawkとかでやろうとすると中々に辛い。。。 そんな時はawscliのfilterとqueryを使うと良いようです。 「running状態のインスタンスのインスタンスID、作成日、Nameを一覧として取得」するケースを考えてみたいと思います。 インスタンス情報一覧を取得するためにはdescribe-instancesを使うことになります。 ``` $ aw
続きを読む

コマンド実行結果を入れた変数を出力するとき、改行をそのままにする

2016年1月26日

以下のようにすると改行が失われます。 ``` #!/bin/sh test=`ls -la` echo $test ``` 改行をそのままにしたい場合はecho時に""で括ります。 ``` #!/bin/sh test=`ls -la` echo "$test" ```
続きを読む

共有フォルダに対するdirの実行時間を出力するbat

2016年1月26日

bat内でPowerShellを使う荒業です。 ``` @echo off for /f "tokens=2 delims=: " %%t in ('powershell -NoProfile -ExecutionPolicy Unrestricted -Command "& { Measure-Command { dir \\remote\dir } }" ^| find "TotalMilliseconds"') do set TIME=%%t echo
続きを読む

Slim FrameworkでNot Foundのときの処理を書く

2016年1月22日

存在しないURLへのアクセスがあったときに、リダイレクトしたかったり独自の404ページを表示したかったりする場合があります。 そのような場合、SlimではnotFoundメソッドで対応します。 ``` $app = new \Slim\Slim(); $app->notFound( function () use ($app) { // リダイレクトしたり独自の404ページをprintしたり $app->red
続きを読む

Slim FrameworkでPUTとDELETEを使う

2016年1月15日

RESTfulなアプリケーション開発のためにはPUTメソッドやDELETEメソッドによるリクエストを使う必要がありますが、多くの場合Webサーバが対応していなかったり設定で無効にされていたりします。 このような場合、slimではPOSTリクエストに_METHODパラメータを付加することで擬似的にPUTとDELETEを使用することが可能です。 ### PUT slim(php側) ``` $app->put('/user/:id', functio
続きを読む

guzzleで非同期リクエストを並列処理でいっぱい投げる

2016年1月12日

方法その1 ``` use GuzzleHttp\Client; use GuzzleHttp\Promise; $client = new Client([ 'base_uri' = 'https://sample.com/', ]); // /test1,/test2,/test3に非同期でgetを投げる $promises[] = $client->getAsync('/test1'); $promises[] = $client-
続きを読む

guzzleで非同期リクエストを投げる

2016年1月8日

``` $client = new \GuzzleHttp\Client([ 'base_uri' => 'https://sample.com/', 'timeout' => 30.0, ]); $promise = $client->getAsync('/test2'); $promise->then(function(ResponseInterface $res){ //コールバック処理 }); ```
続きを読む

chefでシンボリックリンクを削除

2016年1月5日

linkリソースを使います。 ``` link "/etc/php.ini" do action :delete only_if "[ -L /etc/php.ini ]" end ```
続きを読む

php7のmake testでBug #41655がFAILになる

2015年12月22日

php7のmake testを実行したところ以下のテストがFAILになりました。 ``` Bug #41655 (open_basedir bypass via glob()) 1/2 [ext/standard/tests/file/bug41655_1.phpt] ``` 要するにglob関数でopen_basedirの制限を回避できてしまうということらしいです。 テスト内容(bug41655.phpt)を確認してみます。 ``` --TES
続きを読む

openMAINTでPurchase Requestクラス等がないとエラーが出る

2015年12月18日

sharkをインストールした状態で アドミニストレーションモジュール>一般オプション>ワークフロー を開き、有効にするとエラーが出なくなります。 ### sharkのインストール手順 1. openMAINTのzip中にあるcmdbuild-shark-server-2.3.1.warをtomcatのwebapps以下に配置 2. cmdbuild-shark-server-2.3.1.warをshark.warに変更 3. tomcatを
続きを読む

amazon linuxにapxsを入れる

2015年12月15日

``` $ yum install httpd24-devel $ which apxs /usr/bin/apxs ```
続きを読む

amazon linuxの公式リポジトリから入るphpのconfigureオプションを調べる

2015年12月11日

php -iで見れなかったのでSRPMから見ることにします。 amazon linuxの場合はyumdownloaderではなくget_reference_sourceでSRPMを取得します。 ``` get_reference_source --package=php56 rpm -ivh /usr/src/srpm/debug/php56-5.6.14-1.119.amzn1.src.rpm ``` いろいろ警告のようなものが出ますが無視します。
続きを読む

rsyncで鍵認証を抜ける

2015年12月8日

``` $ rsync -e "ssh -i /path/to/key" test.txt ec2-user@***.***.***.***:/tmp/ ```
続きを読む

シェルスクリプトで関数名を取得する

2015年12月1日

${FUNCNAME[0]}で現在実行中の関数名、${FUNCNAME[1]}で呼び出し元の関数名を取得することができます。 なお、関数内で$0を呼び出しても取得できるのは関数名ではなくファイル名です。 test.sh ``` #!/bin/sh function output() { echo $0 echo ${FUNCNAME[0]} echo ${FUNCNAME[1]} } output ``` ```
続きを読む

シェルスクリプトで自身のファイル名を取得

2015年12月1日

$0という特殊変数で自身のファイル名を取得できます。 test.sh ``` #!/bin/sh echo $0 ``` ``` $ ./test.sh test.sh ```
続きを読む

シェルスクリプトの特殊変数$@と$*の違い

2015年12月1日

$@と$*は共に「全ての引数」を表す特殊変数ですが、ダブルクォートなどで括った際の扱いが異なります。 test.sh ``` #!/bin/sh function outputarg() { echo "引数の数: "$# echo "第一引数: "$1 echo "第二引数: "$2 echo -e "\n" } echo "「\$@」の場合" outputarg "$@" echo "「\$*」の場合" out
続きを読む

シェルスクリプトで外部ファイルから変数や関数を読み込む

2015年11月27日

test.txt ``` TEST=hogehoge ``` test.sh ``` #!/bin/sh . ./test.txt echo $TEST ``` test.shを実行 ``` $ ./test.sh hogehoge ```
続きを読む