takafumi blog

日々の勉強メモ

【tmux】 TPM(Tmux Plugin Manager)で現在の状態を保存

環境 tmux 2.1 Tmux、便利ですよね。 そんなTmuxをもっと便利にするTPMというプラグインマネージャー。 github.com 使い方 ほとんどマニュアルそのままだけど まずTPMをgit clone $ git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm そし…

【Node.js】 NVMで最新版のNode.jsをインストール

環境 CentOS 7.2 NVM 0.31.1 Node.js 6.2.0 nightlyビルドを使いたいという事でなければ、stable版はnvmを使うのが便利。 ■NVMのインストール git clone https://github.com/creationix/nvm.git ~/.nvm source ~/.nvm/nvm.sh ■Node.jsのバージョン確認 nvm l…

【Vim】 NeoBundleInstallでキー入力待ちになる問題

vim

環境 vim7.4&nbsp なぜかNeoBundleInstallをコマンドラインから実行すると、途中で止まる事がある。 というか、vimを開いて手打ちしても、<継続>などと出てキー入力待ちになる。 で、なんとかしたいと思って対策。 $ yes "" | vim -i NONE -c 'NeoBundleInst…

【PHP】 正規表現のエスケープ

php

環境 CentOS 7.0 PHP 7.0.1 phpで正規表現(preg系)のエスケープシーケンスの書き方について調べた。 以下のような正規表現がある。 $text = 'abc/def'; preg_match('/abc\\/def/', $text); # (a) preg_match('/abc\/def/', $text); # (b) さて(a)と(b)、どっ…

sshのAgent Forwarding

ssh

環境 CentOS7.0.1 Agent Forwarding。 puttyだと、pargentで秘密鍵のpassfrazeを毎度入力しなくてよくするあれ。 今回localhostのVirtualBoxから別のサーバーにssh。 そこから更にsshしようとすると、passfrazeを聞かれる。 つまり ローカル ↓ ↓ Agent Forwa…

【Vagrant】 複数台構成の調査

環境 Vagrant 1.8.1 VirtualBox 5.0.12 Vagrantによる複数台VM環境の構築 Vagrantfileを以下のようにする。 Vagrant.configure(2) do |config| config.vm.provider "virtualbox" do |vb| vb.gui = true end config.vm.define "server1" do |server| config.v…

yum localinstallでrpmをインストール

環境 CentOS 7.0 最近知ったが、yum には直接rpmをインストールするyum localinstallというコマンドが存在する。 $ sudo yum localinstall jdk-8u40-linux-x64.rpm # or $ sudo yum localinstall 'http://javadl.sun.com/webapps/download/AutoDL?BundleId=1…

Proxyを乗り越えろ!

環境 Vagrant 1.8.1 VirtualBox 5.0.12 という事で、プロキシのある環境でgitとか、Vagrant等、随分引っかかって苦労したので、メモっとく。 Linux全般 / wget / curl 基本的に環境変数が使われる。 以下を実行するか、.bash_profile等にセットすればよい。 …

【Play Framework】 PlayFramework最新版をインストール

環境 Play Framework 2.4.6 CentOS7.0 インストール java,javacがなければ、インストールしておく。 $ # インストール $ cd /usr/local/src $ sudo wget https://downloads.typesafe.com/typesafe-activator/1.3.7/typesafe-activator-1.3.7-minimal.zip $ s…

【Redis】 CentOS7にRedisの最新版をmakeインストール

環境 CentOS 7.0 Redis 3.0.6$nbsp; yumのバージョンを確認してみる とりあえずyumを確認。 $ sudo yum list redis sudo yum list redis Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: ftp.iij.ad.jp * epel: ftp.rike…

【PHP】 PHPBrewでPHP7をインストール

環境 CentOS 7.0 phpbrew 1.20.5 PHP 7.0.1 PHPBrewを使って、PHP7を試してみる。 事前準備 PHPBrewを使うには、php-cliの5.3以上が必要になる。 $ sudo yum install -y php-cli そして、他に必要になるモジュールを追加。 Apacheと連携するので、httpdも追…

【Vagrant】 apacheの設定方法

環境 CentOS 7.0 apache2.4.6 httpdのインストール、起動はVagrantに限らず、通常のCentOS7の手順と同じ。 $ sudo yum install -y httpd httpd-devel $ sudo systemctl start httpd 自動起動の設定をするなら、 $ sudo systemctl enable httpd.service これ…

【Node.js】 いつの間にかバージョン表記が変わってた

環境 CentOS 7.0 Node.js 5.3.0 Node.jsを最新版にしようと思って、最新版を調べたら、バージョンが5.3.0? □ CentOS7.0にNode.js最新版をインストール - takafumi blog のときは0.12.2とかだったのに。 で気が付いたんですが、Node.jsとio.jsが統合したんで…

【Vim】 コマンドラインからvimコマンドを実行

vim

vim -c "NeoBundleInstall" -e とか-e -cオプションでexモードのコマンドを実行できる。 が、何故かvim開いてから実行だと問題ないのに、コマンドライン実行だとエラー出るコマンドとかがある。 と言う事で何か方法がないのかと思ってググッてみた。 vimコマ…

【Vagrant】 プロビジョニングで環境を自動構築

環境 Vagrant 1.8.1 VirtualBox 5.0.12 プロビジョニングの実行タイミング はじめてvagrant upを行ったときに、実行される処理。 2回目以降は以下のようなメッセージが表示されている。 ==> default: flag to force provisioning. Provisioners marked to ru…

【Vagrant】 独自のboxを作成する

環境 Vagrant 1.8.1 VirtualBox 5.0.12 既存のVMからboxイメージを作成する ホスト側から以下のようにする。 PS> vagrant package --base VMName --output Custom.box ==> VMName: Attempting graceful shutdown of VM... VMName: Guest communication could…

【Vagrant】 VirtualBoxのGuestAdditionsを自動で更新する

環境 Vagrant 1.8.1 VirtualBox 5.0.12 割と有名な事らしいけど、VirtualBoxのゲストでカーネルに更新があったときは、GuestAdditionsを入れなおす必要があるらしい。 VirtualBox共有フォルダ覚書 | dark_greenの日記 | スラド 当然知らず、vagrantでVM作っ…

【Vagrant】 Vagrant + VirtualBox で仮想環境を構築

環境 Vagrant 1.8.1 VirtualBox 5.0.12 Vagrantを使った、基本的な仮想環境作成。 ホスト:Windows 10 ゲスト:CentOS 7.1 ホスト側の事前作業 msysgit VirtualBox Vagrant の最新版を公式からDLし、インストールしておく。 ベースとなるOSのイメージ『box』…

【Vagrant】【VirtualBox】 それでも起動しないとき

環境 Vagrant 1.8.1 VirtualBox 5.0.12 【VirtualBox】 が起動しない時の対処 - takafumi blog の続き VirtualBoxが動いたので、これでvagrant upできると思ったら ==> default: Booting VM... ==> default: Waiting for machine to boot. This may take a f…

【VirtualBox】 が起動しない時の対処

環境 VirtualBox 5.0.12 VirtualBoxが起動しない。 こんなエラー。 Timed out after 60001 ms waiting for child request #1 (CloseEvents). (rc=258) where: supR3HardNtChildWaitFor what: 5 Unknown Status 258 (0x102) (258) - Unknown Status 258 (0x10…

【Node.js】【npm】 npm コマンド超基本

環境 CentOS 7.0 JavaScript Node.js 0.12.2 npm 2.7.4 インストール npm自体のインストール nodeをインストールすると、自動でインストールされる。 npm install <モジュール名> ローカルインストール 現在のディレクトリ直下のnpmプロジェクト内に./node_m…

【VMwarePlayer】【VirtualBox】 共有ディレクトリとシンボリックリンク

npmとかパッケージ管理ソフトで、インストールの際に失敗する事があるので調べていたら気が付いたのでメモ。 基本的にホストがLinuxのときは、VMwarePlayer、VirtualBox共にシンボリックリンクが作れない。 一応npmには--no-bin-linksというオプションで、シ…

【Haskell】 Project Euler Prblem4 を少し考えて解いてみた

環境 ghc 7.10.2 CentOS7.0 Problem 4 - PukiWiki Euler problems/1 to 10 - HaskellWiki だと結構力技なので、少し考えてみた。 1 main :: IO () 2 main = print $ head [(x, y, z) | x <- palindromes dgt, y <- factors dgt, let z = x `div` y, x `mod` …

【Haskell】 Project Euler Prblem2を読み間違えて解いてみた

環境 ghc 7.10.2 CentOS7.0 Problem 2 - PukiWiki の 「数列の項の値が400万以下の, 偶数値の項の総和を求めよ.」 を 「数列の項が400万以下の, 偶数値の項の総和を求めよ。」 と間違って解いてみた。 1 main :: IO () 2 main = print . sum' .filter even $…

【Haskell】 stack で ghc-modがインストールできない

環境 ghc 7.10.2 CentOS7.0 Haskellのパッケージ管理をstackにしてみた。 順調にインストールはし、Yesodもcabal hellせずナイスと思ったら、ghc-modがインストールできない。 $ stack install ghc-mod While constructing the BuildPlan the following exce…

【Ruby】 引数の型チェック gem contracts

環境 ruby 2.2.3 CentOS7.0 Rubyを始めてみた。 さて、初めてすぐ気になった事。 関数は以下のように書くわけで 1 def gcd(a, b) 2 if b == 0 3 return a 4 else 5 return gcd(b, a % b) 6 end 7 end 8 9 p gcd(10, 'a') $ ruby gcd.rb gcd.rb:9:in `%': Str…

【Haskell】 HsExifを使い、Exif情報で画像を整理するスクリプトを書いてみた

環境 ghc 7.8.3 CentOS7.0 HaskellでExif情報を使って、写真を整理するスクリプトを書いてみた。 github.com ・・・まだExif撮影日時ごとにディレクトリ作成して、画像をコピーするだけ。 Exif取得自体はHsExifといモジュールを使ったが、そもそもHaskell自…

【Haskell】 H本 13.6のチェスの演習問題

環境 ghc 7.8.3 CentOS7.0 「すごいHaskellたのしく学ぼう!」第13章 メモ 13.6のチェスの演習問題をやってみた。 import Control.Monad type KnightPos = (Int, Int) -- (横, 縦) moveKnight :: KnightPos -> [KnightPos] moveKnight (c,r) = do (c', r') <…

【Haskell】 モナド簡単まとめ

環境 ghc 7.8.3 CentOS7.0 「すごいHaskellたのしく学ぼう!」第13章 メモ 簡易Monadまとめ Monad(モナド) ▽定義 class Monad m where return :: a -> m a (>>=) :: m a -> (a -> m b) -> m b (>>) :: m a -> m b -> m b x >> y = x >>= \_ -> y fail :: Str…

【Haskell】 ファンクター、アプリカティブの簡単まとめ

環境 ghc 7.8.3 CentOS7.0 「すごいHaskellたのしく学ぼう!」第10,11章 メモ ファンクター、アプリカティブのとりあえず、最低限必要そうな部分をまとめ。 でも間違いなく、こちらの方が、はるかに分かりやすいです。 なので、以下は自分用のまとめです。 F…