weblog of key_amb

主にIT関連の技術メモ

2013-06-01から1ヶ月間の記事一覧

git:リモートブランチの作成/削除

Git

branchの作成 git checkout -b {branch名} 作成したbranchをリモートリポジトリにpush git push origin {branch名} リモートブランチからローカルに作業ブランチを作る git checkout {branch名} origin/{branch名} リモートブランチの削除 git push origin :…

Vimでテキストの折りたたみの設定

最近まで知らなかったのだが、VimではFoldingという機能があって、テキストを段落ごとに折りたたむことができる。 http://vimdoc.sourceforge.net/htmldoc/fold.html 例えば以下のように設定する。 || set foldmethod=indent set foldlevel=2 set foldcolumn…

Amazon EC2にFedora 19のインスタンスを作ってみる

AWS

EC2でDebian Squeezeのインスタンスを作ってみる - weblog of key_amb と同じような流れ。 fedoraproject.org が用意してくれているEC2用のAMIイメージは https://fedoraproject.org/wiki/Cloud_images にある。 2013/6/21現在、Fedora 19-Beta x86_64のAMI …

誤って作成したbonding deviceをきれいに削除する

とあるCentOSのVMで誤って tcpdump -i bond0 を実行してしまったところ、bond0 が作成されてしまった。 が、実際にはbondingは有効になっておらず、bond0は上がってなくておかしな状態。該当時刻にkernelが次のようなログを吐いていた。 kernel: bonding: MI…

git stashの使い方

Git

ローカルのワーキングツリーを編集した状態でgit pullすると、警告が出てpullできないことがある。 そんなときは、git stashで一時保存するとよい。 すると、ローカル編集がstashに退避されるので、pull可能になる。pullした後、git stash pop で stash に退…

gitの出力に色をつける

Git

下記を実行する。 $ git config --global color.ui true これで git diff や git status の表示がカラフルになって、はかどる。 参考 Git - Git の設定

Term::ANSIColorでテキストに色を付ける

前掲のText::LTSV::Linerでも、そもそもText::LTSVの中で使われているYAML::Tiny::Colorでも使われている Term::ANSIColor というモジュールを使うと、ターミナルに出力するテキストに色を付けることができる。http://perldoc.perl.org/Term/ANSIColor.html …

Text::LTSV::Liner 書いてみた。

LTSVのPerlのパーサをCPANで探していたら、Text::LTSVとApp::YGが見つかったけど、どちらも次のような感じで複数行に分けて表示してくれるものっぽかった。 $ cat sample.ltsv | ltsview -k id,name --- id:001 name:taro --- id:002 name:jiro --- :ログと…

Macでマウスカーソルを見失わないようにする

Macはマウスカーソルが小さい。 しかも、ターミナルやエディタを開いていると、ほぼほぼ背景に溶け込んで見失うことがままある。 Windowsだと「Ctrlキーでマウス位置を表示する」みたいなマウスオプションがあるのだが、Macにはそういうのはないのだろうか。…

unite-outlineで見出し・関数にジャンプする

タグジャンプといえばCTagsですが、わざわざタグ生成するの面倒ですよね。ファイル編集したらタグを再生成しないと、変な位置にジャンプしちゃうし。 そんな人のために打ってつけのプラグインがunite-outlineです。 ** NeoBundleの場合のインストール vimrc…

Vim - Alignプラグインで表整形

Alignというプラグインを使うとテキストを縦に整形できます。 使い方は参考記事がわかりやすいですが、一応本文にも書きます。 NeoBundleの場合のインストール vimrcに NeoBundle 'Align'を書いて、 :NeoBundleInstallを打つだけ。 使い方 こんなコードがあ…

Vimで:set expandtabしてるときにタブ文字を入力する

入力モードで<C-v><Tab>を入力する。 以上。 参考 :set expandtab(:set et)設定の時に、タブ文字を挿入する — 名無しのvim使い</tab></c-v>

Vimで縦分割時に狭くなりすぎないようにする

Vimをファイルブラウザ的に起動して、oやvでファイルを分割して開くことはよくあるのではないかと思います。(ここまで前記事のコピペ) ですが、vで開くとデフォルトだと画面が狭すぎて大変不便です。vimrcに次のように書いておくと、いい感じの広さになりま…

Vimで新しいウィンドウを右や下に開く

Vimをファイルブラウザ的に起動して、oやvでファイルを分割して開くことはよくあるのではないかと思います。 そのとき、デフォルトだと上か左に開いてしまうのですが、以下のようにvimrcに書いておけば、この挙動を変更できます。 " 新しいウィンドウを下に…

CentOS 5にVim7.3をインストール

CentOS 5の開発環境でNeoBundlerを使おうとしたら、動かなかった。 カッとなったので、参考記事を参考にVimをバージョンアップした。 ** 1. 事前準備 ビルドに必要なパッケージをインストールしておく。 || $ sudo yum install ncurses-devel ||< ** 2. ソー…

Vimプラグインの管理にNeoBundleを使う

※2015/6/12 .vimrc の書き方を最新に更新しました。 NeoBunlde は Vundle を元にして作られた改良版のようだ。 http://vim-users.jp/2011/10/hack238/ に作者の記事がある。 使い方は簡単。 || mkdir -p ~/.vim/bundle git clone https://github.com/Shougo/…

CentOS 5にruby 2.0.0をインストール

rootで作業する。 http://www.ruby-lang.org/ja/downloads/ から最新のrubyを取ってくる。手元の環境だと古いバージョンのrubyがyumでインストールされていたので、 yum remove rubyで、予めアンインストールした。 tar xvzf ruby-2.0.0-p195.tar.gz cd ruby…

Module::Installでモジュールを作ってみる

おそらくはそれさえも平凡な日々: CPANモジュールのパッケージングの歴史 にCPANモジュールのパッケージングの歴史があり、トレンドを知ることができる。Module::Installには課題もありそうだが、現在は広く普及してて無難っぽい。 ので、手始めにこれを使っ…

Macにplenvを入れる

https://github.com/tokuhirom/plenvplenvはperlbrewのようにPerlの複数バージョンを切り替えて使えるツールである。 githubのREADMEにあるように、Mac OS Xであれば、以下でインストールできる。 ※事前にHomebrewのインストールが必要。 brew update brew i…

MacのHome/End/PageUp/PageDownキー

Macbook AirのキーボードにHome/End/PageUp/PageDownキーがなくて困っていたら、commandキーで代替できることを知った。 Home command + ← End command + → PageUp command + ↑ PageDown command + ↓ ※参考記事だとFnキーが正しそうだが、手元のMacbook Air…

MacのFinderで隠しファイルを表示する

手元のOSのバージョンはOS X 10.7.3。以下のコマンドをログインユーザで実行する。 defaults write com.apple.finder AppleShowAllFiles TRUE killall Finder非表示に戻す場合は次を実行すればいいそうだ。 defaults write com.apple.finder AppleShowAllFil…

KVMのパフォーマンスチューニング

ひょんなことでKVMのdisk cache設定をいじることになった。http://www.linux-kvm.org/page/Tuning_KVM にチューニングのヒントがある。disk cache設定には none, writeback, writethrough があり、この記事のベンチマークによると、none以外を設定したときに…

LTSV

LTSVというログフォーマットが最近話題になっている。 大したことはなくて、"label:内容" をタブ区切りに並べるというフォーマットなのだが、パースしやすいし、ログ出す順番考えなくて済むとかで便利!ということで、今後の標準になりそうな勢い。 ちなみに…

ISO 8601

ISO 8601は日付と時刻の表記に関する国際規格だそうだ。 この規格に従うと、日時は例えば次のように表記される。 2013-06-05T18:16:00+0900ログにタイムスタンプを吐くとき、このフォーマットにしておくといいことがあるかもしれない。 参考 ISO 8601 - Wiki…

cronable_tail

https://github.com/sonots/cronable_tail@sonots さんが作ったもの。 ログポジションを覚えて実行するので、cronでもtailできるよーというもののようだ。

lsofコマンド

ファイルやソケットを開いているプロセスを出力できる。 または、プロセス番号やプロセス名から使用しているリソースを表示できる。 # ポート番号指定 lsof -i:3306,11211 # プロセス名指定 lsof -c ntp 参考 特定のポートを利用しているプロセスを調べる|F…