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

Error detected while processing function ghcmod#util#check_version

ghc-mod.vimでエラーが出た 具体的にはghc-modを5.2.1にupdateしたら.hsファイルを開いたときにエラーが出るようになった 文法エラーを表示する機能には影響していないようなのでほっておいてもいいが、起動時に毎回出るのは面倒なので調べてみた ちなみにgh…

複数ファイルに一括でinsert

いくつかのファイルにcopyrightを追加する必要があり調べたのでメモ参考ページ Unix Sed Tutorial: Append, Insert, Replace, and Count File Linessedを使えば簡単にできる まずは簡単な場合。example.cの先頭に以下の一行を入れたいとき // Copyright Hoge…

git branchとgit checkout 新しいブランチを作る

git

gitで新しくブランチを作る場合について調べたのでメモ移動も一緒に行いたいのでcheckoutを使う 既にがあればエラー $ git checkout -b <new-branch> これと同じ $ git branch <new-branch> $ git checkout <new-branch>既にがあれば現在いるブランチの内容でリセット (リセット=同じ内容になる</new-branch></new-branch></new-branch>…

tar (child): xz: Cannot exec: No such file or directory

tarでエラーが出たため調査 $ tar -Jxvf hoge.tar.xzこれで以下のようなエラー tar (child): xz: Cannot exec: No such file or directory tar (child): Error is not recoverable: exiting now tar: Child returned status 2 tar: Error is not recoverable…

git clientの脆弱性

2014/12/19に脆弱性を修正したバージョンがリリースされた手元(Mac)で試したところbrewで修正版にアップグレードできた $ brew update $ brew upgrade git $ git --version git version 2.2.1.git/configを書き換えることでクライアント側で任意のコマンド…

複数ファイルを一括リネーム

標準出力から文字列を受け取って別のコマンドで使えるととても便利 例えば、複数のファイル名を一気に同じ形式に変更したいとするカレントディレクトリに以下のファイルがあるとする hoge1 hoge2 hoge3これをそれぞれ.txtという拡張子を付けた形にリネームし…

tarで展開時にerror

curlでとってきたtar.xzのファイルを展開しようとしたところerrorが出たtar.xzは以下のように展開できる $ tar -Jxvf filename.tar.xz JのオプションはGNUのtarにしかないらしく、その辺りが原因かと思ったがちゃんとGNUのものを使っていた。 curlで取得した…

シェル上で簡単にjsonを扱う

シェル上でjsonをパースして他のコマンドに渡したり綺麗に表示したいときがある そのためのコマンドとしてjqというのがあったためメモ公式ページはこちら http://stedolan.github.io/jq/サンプルとして以下の天気情報のapiを叩いてjsonデータを取得する Open…

グロブで特定ファイルを除外

zsh

特定のファイルだけを除いた他のファイルすべてに対して処理をしたいときの指定方法をメモまずオプション設定 .zshrcなどに書いておくのがよい set_opt extended_globこれで^や~がグロブとして使える 具体的には以下のような感じ # .cではないファイル $ ls …

Kernel Configurationを確認

カーネルのコンフィギュレーションを確認する方法をメモ/proc/config.gzにかかれているので特定のオプションがONになっているかどうかはgrepしてみればよい $ zcat /proc/config.gz | grep CONFIG_IP_VS_NFCTちなみにCONFIG_IP_VS_NFCTはIPVS用の設定をiptab…

vimとxargsで表示がおかしくなる

まとめてファイルを開く必要があるときに以下のようにやることがある $ find . -name '*.txt' | xargs vimだがこんなwarningが出た上、vimを終了した後にターミナルの表示がおかしくなる Vim: Warning: Input is not from a terminal # vim終了後 $ git stat…

書き込み権限のないユーザでファイルを編集してしまったとき Can't open file for writing

vim

vimでrootのもっているファイルをつい通常のユーザのままで開いて編集し、セーブするときになって気づくことがある。rootになって再度編集しなおしてもよいが、それが大変なときもある。 そんなときは以下のコマンドでOK(sudo可能なユーザであること前提) …

vagrantでロードバランサーの実験環境作成

勉強がてらubuntuでlvsを構築してみたので手順やハマったところをメモ実験用の環境はvagrantで構築 nodeをたくさん立てる必要があるためdocker使ってメモリ節約したかったけど dockerだと通信周りの設定でハマりそう&その部分は今回の趣旨と違うため次のス…

ファイルの容量を調べる

各ファイルの容量を調べる方法についてメモ使うコマンドはdu カレントディレクトリ以下の全てのファイルの大きさを単位を直して出力 $ du -hカレントディレクトリの容量合計を出力 $ du -shカレントディレクトリ直下の各ディレクトリの容量合計を出力 $ du -…

gitでどこにpushされるか調べる

git

どのブランチがどこのリモートブランチとつながっているのか確かめたいときはこれ $ git branch -vv出力はこうなる master 828c5cc [origin/master] message = ローカルブランチ 最新のコミット [追跡ブランチ] コミットメッセージ

ncによる簡易サーバ

ちょっとしたサーバを立ててアクセスできるか試してみたいときがあるnginxとかapacheを入れるまでもないとき簡単にできるやり方があった $ echo "hello" | nc -l -p 10000port 10000にアクセスするとhelloを返す

svn checkoutでnetwork connection closed unexpectedly

svn

あるcookbookを使ってサーバ構築しようとしたところ途中でエラーとなった 中を調べてみるとsvn checkoutがうまくいかずに止まっていることがわかった そのエラーはこれ network connection closed unexpectedlyこれでは原因がわからない vでデバッグメッセー…

sudoした際に環境変数を引き継ぐ

環境変数を設定することでコマンドの挙動が変わる場合以下のように実行する $ HOGE=hoge $ someCommandただ、someCommandを実行するにはrootになる必要があった場合どうするか? 以下のようにオプションを付けることで簡単に実現できることがわかった $ HOGE…

vimで行番号の色を変える

vim

Retinaディスプレイになって行番号の色が見づらくなったためそこだけ少し変えることにしたこちらのページを参考にした。まとまっていてとてもわかりやすい。 Vim のカラースキームが微妙に気に食わないときの対処法 - 反省はしても後悔はしないまずコマンド…

docker上でjekyllを使う

何らかのブログシステムを構築してみたいと思い調べてみたところjekyllというのが良さそうということがわかったのでちょっと入れてみることにした。まずboot2dockerを入れて起動 $ brew install boot2docker $ boot2docker init $ boot2docker upしかし、う…

brew caskが動かない

以下のようなエラーになった $ brew cask install virtualbox Error: No available formula for virtualboxタイポもしてないしなぜかと思ってググってみるとこんなのが見つかった osx - Homebrew error occured when I command "brew cask install virtualbo…

すごいhaskell本の練習問題(knightの動き)

すごいhaskell本の13章にあるチェスのknightの動きを求める練習問題を解いてみたのでメモ初期位置と目的位置、移動回数を指定して 移動できるならその経路をリストとして出力するようにした最終的なコードはこんな感じ import Control.Monad type Pos = (Int…

haskellでハマったところ

haskellを使っていてハマったところについてメモしておく データ構築子のexport, import 下のコードの場合、型構築子はexportされるが、データ構築子はexportされない。なので別のモジュールにて型名としてのFugaが使われているからといってFugaをデータとし…

packerでvagrantのbox作成

初めてpackerを使いubuntu14.04のvagrant用boxを作成してみたので、その際にやったことやハマった点などメモ最終的に作った設定はこちらにおいた packer/ubuntu14.04 at master · y-kamiya/packer · GitHub 参考ページ 以下のページでは詰まるポイントについ…

vimでちょっと複雑な置換

あるパターンに従って様々な単語を置換して入力していきたい場合、レジスタを使うことでうまく処理を軽減できる。例えば以下のようにするとhogeをfugaに置換できる。 :let @i = "fuga" :s/hoge/\=@i/\=の後に書いたものはvimscriptとして実行される。また、…

gdbを使う

gdbを初めて使ったのでその際に調べたことをメモgdbの公式ページはこちら http://www.gnu.org/software/gdb/インストール $ sudo apt-get install gdbデバッグモードでコンパイルしてデバッグ開始 $ gcc -g -o hoge hoge.c $ gdb hogeプログラムを実行 (gdb)…

CoreOSとvagrantでクラスターを構築

CoreOSいじってみたのでメモ今回はvagrantでクラスター(core-01~03)+etcdを動かすVM(discovery)を立て、discoveryからクラスターの各マシンにserviceをデプロイするところまでやってみた 基本的にこちらの記事と各ツールのレポジトリ、ドキュメントを元…

knife soloが動かない

こちらの本を読んでchefを動かしてみた際にハマった部分をメモ入門Chef Solo - Infrastructure as Code作者: 伊藤直也出版社/メーカー: 伊藤直也発売日: 2013/03/11メディア: Kindle版購入: 16人 クリック: 1,027回この商品を含むブログ (17件) を見るまずom…

vagrantとdockerで開発・ビルド環境の構築

dockerのimageとしてビルド環境を作るスクリプトがあったため、それを使えるように開発環境を作ってみたのでメモ ビルドはクリーンな環境や特定のOSで行いたいものの、開発自体はツールなど整備してあるMac上で行いたいという意図。 Macでは直接dockerを扱え…

vagrantを使ってみた

vagrantを使ってみたのでやったことをメモ基本的には公式サイトを見ながらやった http://docs.vagrantup.com/v2/getting-started/index.html▼インストール ホストの環境はMacなのでbrewを使って入れた 仮想環境の作成にはvirtualboxを用いた brew tap phinze…