技術メモ

技術メモ

2017-01-01から1年間の記事一覧

タブ区切りを置換する

vim

tsv形式で、各行の一部の値を置換したい。 エスケープ周りで少し混乱したのでメモ。 \(.*\)\t\(.*\)\t\(.*\)\t\(.*\)\t\(.*\)\t\(.*\)\t\(.*\)\t\(.*\)/99\t\2\t\3\t\4\t\5\t\6\t\7\t\8/g

指定期間の中で処理を繰り返す

指定期間の中で日付を使ってごにょごにょしたい。 s=`date -d $start_date +%s` e=`date -d $end_date +%s` period=`expr \( $e - $s \) / 60 / 60 / 24` for i in $period # 一日だけの場合は別途調整する必要あり do year=`date +"%Y" -d "$start_date +$i…

IPの個数をカウント

awk

IPレンジの中のIPの個数を知りたい(awkでログを漁る時に必要になったりする)。 IPを2進数と見立てて10進数に変換したうえで差分を取る。 split(ipstart,ipstart_ary,"."); x=ipstart_ary[1]*16777216+ipstart_ary[2]*65536+ipstart_ary[3]*256+ipstart_ary…

Fuelでトランザクションを張る

php

FuelPHPで、複数のDBに対してトランザクションを張りたい。 start_transaction(); $conn_default->start_transaction(); // sql $conn->commit_transaction(); $conn_default->commit_transaction(); } catc…

group単位でまとめて、カンマ区切りの文字列に結合

mysqlでいう「GROUP_CONCAT」をhiveqlでやりたい。 GROUP_CONCAT関数の便利さは異常 - 開発の風景 〜KKZのSE日記〜 この複数行の結果をつなげてカンマ区切りの文字列にしたい場合、GROUP_CONCAT関数が便利です。これを使うとgroup by単位でまとめて、カンマ…

Androidで開発時かリリース時か判別する

アプリ情報が格納されているクラスを利用して、開発時(デバッグ時)かリリース時かを判別する。この判別により、開発時とリリース時で処理を振り分けることができる。例えば、APIキーを開発用とリリース用で分けたり、デバッグログを残したり残さなかったり…

古いAndroidアプリの申請

古いAndroidアプリ(Eclipseで作成)をバージョンアップして申請する際の流れを。 0. GooglePlayDeveloperへの登録 省略 1. 「AndroidManifest.xml」の修正 「android:versionCode」「android:versionName」の値を更新する。 外部ツールの認証を開発用とリリ…

smarty(FuelPHP)でphpタグを利用する

やりたいこと キャッシュを有効にしつつ、cssやjsファイルの変更を確実に反映させる – doop クラスView_Smarty(fuel/packages/parser/classes/view/smarty.php)のメソッドparserの下記1行

スクロール追尾ボタンをつくる

js

スクロール追尾ボタンをつくりたい そこで...sticky https://github.com/garand/sticky When the target element is about to be hidden, the plugin will add the class className to it (and to a wrapper added as its parent), set it to position: fixe…

FuelでAjaxを使う

Ajaxでリクエストを投げて、FuelPHPのコントローラで処理する。 フロント var res_json = $.ajax({ type : 'post', url : '/result/fetch.json', data : JSON.stringify(post_data), // POSTするJSONデータ contentType : 'application/json', dataType : 'j…

パイプで並列処理

はじめに 「Software Design 2012年8月号」の「開眼シェルスクリプト」の焼き直し。 Webにあるので一読することを勧める。開眼シェルスクリプト2012年8月号 – 上田ブログ パイプ パイプにつなげたコマンドは並列稼働する(複数のCPUをなるたけ休まず働かせよ…

psqlでSQLとメタコマンドを併用する

結論 実行するSQLとメタコマンドが記述されたファイルsqlite.txtを用意する。 ※デリミタがタブ文字の場合は、カンマを「Ctrl+v+tab」に置き換える。 delete from zipcode_info; delete from zipcode_info2; \copy zipcode_info (pref_code, city_code, zipco…

1つのサーバで複数の開発環境をつくる

前提条件 php(phpenv,composer導入済み)、apacheで稼働 何かしらのフレームワークを利用(Fuelを想定) バージョン管理されてる(gitbucketを想定) リソースの取得 まずは、管理リソースを。 # cd /var/www/ # git clone -b develop http://~.git 開発用…

gitでよく使うの

git

gitでよく使うコマンドをまとめてみた。 clone git clone -b ブランチ名 リモートリポジトリのURL [ローカルリポジトリ名] remote # リモートリポジトリ一覧 git remote -v # リモートリポジトリ追加 git remote add リモートリポジトリ名 リモート先(URLに…

postgresqlでデータの流し込み

データを流し込む方法として、ダンプ/リストアを使う方法と、エクスポート/インポートを使う方法をメモ。 ダンプ&リストア # ダンプ # テーブル定義のみダンプしたい場合は「-s」、データのみダンプしたい場合は「-a」を付ける # 下記コマンドは、データの…