Ubuntuにrubyを入れてみた

Ubuntu 14.04にrubyを入れてみました
rubyのバージョンが切り替えられるようにrbenvを使います

gitは入れておきます
参考) UbuntuにGitを入れてみた

rbenvをインストール

$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
$ echo ‘export PATH=”$HOME/.rbenv/bin:$PATH”‘ >> ~/.bashrc
$ echo ‘eval “$(rbenv init -)”‘ >> ~/.bashrc
$ . ~/.bashrc

ruby-buildを導入

$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build

rubyをインストール

必要なものをいれておきます
$ sudo apt-get install -y libssl-dev zlib1g-dev libreadline-dev libyaml-dev flex gettext
$ sudo apt-get install -y build-essential

$ rbenv install –list
でインストールできるrubyのバージョンが選べます

2.1.2を入れてみます
$ rbenv install 2.1.2
$ rbenv global 2.1.2
$ rbenv rehash
$ gem update –system
$ echo “install: –no-rdoc –no-ri” > ~/.gemrc
$ echo “update: –no-rdoc –no-ri” >> ~/.gemrc

これで準備できました
$ rbenv versions
でいれたrubyのバージョンがみれます

$ rbenv local (ruby version)
でそのディレクトリ以下で有効になります

jQueryでdata-*属性を使ってみる

javascriptやjQueryで何らかのデータをhtmlに埋め込んで取りたいけどいいhtml要素がないときdata属性が良さそうです
(古いブラウザならhidden要素でしょうか)

<p class="sentence" data-author="yamada taro">
なんとかかんとか
</p>

$(.sentence).data(“author”)

でyamada taroが取れます

対応しているブラウザはcaniuse.comで調べると良さそうです
IEは8からですね
http://caniuse.com/#search=data-*

linuxでディレクトリだけコピーする

ファイルはいらず、ディレクトリ構造だけコピーしたいとき

$ find (コピーしたいディレクトリ) -type d
これでディレクトリだけ検索します

$ find (コピーしたいディレクトリ) -type d | xargs -I DIR mkdir (コピー先のディレクトリ)/DIR

xargs -I のあとのDIRはなんでもよくて、find の結果が mkdirのあとのDIRに入ります

これで楽にコピーができました

vagrantのSyncedFolderにrsyncでのエラー

vagrantのSyncedFolderにrsyncでエラーが発生しました

There was an error when attempting to rsync a synced folder.
Please inspect the error message below for more info.

Host path: /home/user/ws/vagrant/precise32/
Guest path: /vagrant
Command: rsync –verbose –archive –delete -z –copy-links –no-owner –no-group –rsync-path sudo rsync -e ssh -p 2222 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ‘/home/user/.vagrant.d/insecure_private_key’ –> exclude .vagrant/ –exclude .git/ /home/user/ws/vagrant/precise32/ vagrant@127.0.0.1:/vagrant
Error: Warning: Permanently added ‘[127.0.0.1]:2222’ (ECDSA) to the list of known hosts.
Received disconnect from 127.0.0.1: 2: Too many authentication failures for vagrant
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(226) [sender=3.1.0]

解決策はこれでした

$ vim ~/.ssh/config
Host 127.0.0.1
IdentitiesOnly yes

を追記
これでうまくいきました