コピペコードで快適生活

明日使えるソースを自分のために

シェルでいつか使うかもしれないコマンド・オプションまとめ

便利かどうかはわからないけど、いつか使うかもしれないコマンド・オプションを随時追加していく。 # 素数を出す # factorコマンドは素因数分解するコマンド seq 1 20 | gfactor | awk 'NF==2{print $2}' # 文字の16進数変換 # -p で 16進数にして出す # -p …

よく使うステータスコード

APIのレスポンスコードをどうするか毎回迷うので。 下記より転記させていただきました。 http://ruby-rails.hatenadiary.com/entry/20141125/1416918957#render-ctrl-status-code Code シンボル 説明 200 :ok レスポンスが正常に終了した 201 :created creat…

Windows10でhosts編集ウィンドウを一発で開く

powershell -NoProfile -ExecutionPolicy unrestricted -Command "start notepad C:\Windows\System32\drivers\etc\hosts -verb runas"これを edit_hosts.bat みたいな名前で保存して、ダブルクリックで起動したらOK。

シェルで便利だったコマンド&オプションまとめ

随時追加していく。 # grepでOR検索 cat file.txt | grep -e hoge -e fuga # grepで前後行も出力 # -A -> 後の行数 # -B -> 前の行数 cat file.txt | grep -A 10 -B 5 hoge -e fuga # xargsでパイプで渡された値を任意の場所に突っ込む cat file.txt | grep …

My.tmux.conf

随時更新していく bind s split-window -v bind v split-window -h bind j select-pane -D bind k select-pane -U bind h select-pane -L bind l select-pane -R bind r source-file ~/.tmux.conf \; display "Reloaded!" set -g pane-active-border-fg red …

サーバサイドとクライアントサイドのJavascriptが混在しているリポジトリ

表題の件の構成について社内チャットで説明したのを、再構成してみました。 ディレクトリ構成 - build - src - gulpfile.js - package.json - node_modulesbuildには、ブラウザが読み込んでいるjs, css, html 一式、 そしてnodeサーバが動かしているjsが入り…

Rubyで名詞の単数形・複数形を変換する

たまにやりたくなる。いつもメソッド名忘れているけど。 require 'active_support' 'user'.pluralize # => users 'users'.singularize # => user

gitでたまに使うコマンド集

git

たまにしか使わなくて、よく忘れるコマンドをメモしていく。 # リモートリポジトリの変更 git remote set-url origin <新しいリポジトリURL> # タグでブランチ切る git checkout -b 1.6 refs/tags/v1.6 # 間違ってaddしたやつを取り消す git reset config/en…

Rubyでメソッドの定義場所を確認する

gem pry を使うと、$で簡単に確認できる $ "".present? # From: /home/kinosuke/app/vendor/bundle/ruby/2.3.0/gems/activesupport-4.2.7/lib/active_support/core_ext/object/blank.rb @ line 23: # Owner: Object # Visibility: public # Number of lines:…

rpmでインストール&アンインストール

オプションをいつも忘れるのでメモ。 # インストール rpm -ivh https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.2.1.rpm # アンインストール rpm -e elasticsearch # 詳細確認(インストールされているかどうか確認できる) rpm -q ela…

My.vimrc

vim

随時アップデート中 " " NeoBundle " first setting " curl https://raw.githubusercontent.com/Shougo/neobundle.vim/master/bin/install.sh | sh " vim " :NeoBundleInstall " if has('vim_starting') set runtimepath+=~/.vim/bundle/neobundle.vim call …

CSRの作成方法メモ

# genarate random text openssl md5 * > rand.dat # genarate private key openssl genrsa -rand rand.dat -des3 2048 > mydomain.com.key # generate csr openssl req -new -key mydomain.com.key -out mydomain.com.csr # confirm openssl req -in mydoma…

RailsConsoleでサクッとメール送信

本番環境でメール送信チェックとかするとき用に。 ActionMailer::Base.mail(to: "test@example.com", from: "test@example.com", subject: "題名", body: "本文").deliver

RubyでHTTPリクエストを送る

たまにしか使わなくてよく忘れるのでメモします。 require 'net/http' require 'uri' uri = URI.parse("http://kinosuke.hatenablog.jp/") # when get request req = Net::HTTP::Get.new("#{uri.path}?#{uri.query}") # when post request # req = Net::HTTP…

Rubyでログを強制出力する

require 'logger' _log = Logger.new('/tmp/debug.log') _log.info("#{ログ出力したいもの}") こちらを参考にさせていただきました http://dev.classmethod.jp/client-side/language-client-side/output_log_using_logger/

sedコマンドの基本を知っておく

基本系 eオプションにコマンドを渡して使う コマンドにはs(置換), d(行削除), p(行抽出)などがある。 cat input.txt | sed -e 'コマンド' # もしくは sed -e 'コマンド' input.txt 使用例 # 正規表現で文字列の置換を行う cat input.txt | sed -e 's/xxx/XXX…

RubyでHashの要素に.(ドット)でアクセスしたい

Struct使えば楽にできるみたい。 hash = {hoge: 'fuga'} obj = Struct.new(*(hash.keys)).new(*(hash.values)) obj.hoge # => 'fuga'

PostgreSQLの基本的なコマンド

これまでMySQLばかり使ってきてPostgreSQLの操作に戸惑ったので、よく使う基本的なコマンドをメモしました。 シェルでの操作 # 接続 psql -U USERNAME # ダンプ pg_dump -U USERNAME DBNAME > DUMP_FILE # ダンプ(データだけ) pg_dump -U USERNAME --data-…

{print $1}しか知らない自分のためのAWKメモ

awkのことをきちんと知っておこうと思って、下記を読ませていただいたときのメモ書きです。 http://antibayesian.hateblo.jp/entry/2014/09/15/162605 条件マッチする行を抽出 # 10にマッチする行を抽出する。 awk /10/ trees.txt # 両方の条件を満たす行を…

シェルの便利コマンドメモ(cat, paste, join, comm)

処理対象ファイル a.txt 1. abc 2. def 4. xyzb.txt 1. 123 4. xyz 5. 456 cat ファイルを結合する $ cat a.txt b.txt 1.abc 2.def 4.xyz 1.123 4.xyz 5.456 paste ファイルを横に並べて結合する $ paste a.txt b.txt 1.abc 1.123 2.def 4.xyz 4.xyz 5.456 j…

ファイル、またはディレクトリだけに chmod するシェルのメモ

ファイルの場合 find . -type f -print | xargs chmod 644 ディレクトリの場合 find . -type d -print | xargs chmod 755

Javascriptで配列をリング状に扱えるといいな

Javascript(ES6)でループするようなスライダーとか作るときに、配列がリング状に扱えるといいなと思って書いてみました。 配列を拡張するとかではなくて、あくまで配列のIndexを取得するだけのシンプルな作りです。 export default class RingNums { constru…

SASSをwebpackでコンパイルした時の設定メモ

SASSをwebpackを使ってコンパイルしたときの設定メモです。 npmモジュールのインストール モジュールはこれだけ必要でした。SASSのファイルは、node-sass -> sass-loader -> css-loader -> style-loader と渡されてCSSとなり、extract-text-webpack-pluginで…

CentOS6系にMySQL5.7を一撃インストール

CentOS6系にMySQL5.7をインストールした時のメモ書き。インストール時に発行される初期パスワードをシェルで取り出してログイン。 その後パスワードを仮のものに変更(これを一度やらないと色々操作できない)。 パスワード制約をゆるくして、再度わかりやす…

CentOS6系にRed5サーバを構築する

Webプレイヤーの動作検証のためrtmpのストリームが必要になったので構築してみました。インストール cd /usr/local/src wget https://github.com/Red5/red5-server/releases/download/v1.0.9-RELEASE/red5-server-1.0.9-RELEASE.tar.gz tar -xzvf red5-serve…

unicornのlogrotate設定サンプル

/etc/logrotate.d 配下に下記を置く。 日次ローテート + 90日間保存で設定しています。 ローテートしたログは圧縮するが、直近の1世代分はそのまま /var/www/app/shared/log/*.log { daily missingok rotate 90 dateext compress delaycompress lastaction …

serviceコマンドでunicorn起動するための設定サンプル

下記ファイル を /etc/init.d/ に配置する。 #!/bin/sh # chkconfig: 345 99 01 # description: unicorn as Rails app server SERVICE="unicorn" ENV="production" RAILS_ROOT="/var/www/app/current" CONFIG=$RAILS_ROOT"/config/unicorn/"$ENV".rb" PID_FI…

webpack+reactの環境構築メモ

npm install $ cd my_project $ npm init $ npm install webpack -g $ npm install --save react react-dom $ npm install --save-dev webpack webpack-dev-server $ npm install --save-dev babel-loader babel-core babel-preset-react babel-preset-es201…

Elasticsearchことはじめ

仕事でElasticsearch使う必要があったので、GettingStarted! これはなに? 分散型RESTful検索/分析エンジン https://www.elastic.co/jp/products/elasticsearch 特徴 速い スケールが容易(クラスタ構成) RESTful APIで全ての入出力が可能 検索時は条件との…

JavaScript(ES5)でクラスベースっぽくオブジェクト思考する

JavaScript(ES5)でクラスベースっぽくオブジェクト思考したかったので簡単な書き方をメモ。 var MyObject = function(a){ // アクセサっぽく this.a = a; // privateメソッドっぽく var privateFunction = function(){ alert('private function! arg is ' + …