タグ

ブックマーク / takuya-1st.hatenablog.jp (11)

  • gccのインクルードパスについて調べたこと - それマグで!

    gccのinclude パスについて調べたい。いっつも何処から読んでるのかよくわからない。 小手先で調べた。 ソースをコンパイルして調べてみる takuya@air:~$ cat test.c #include <stdio.h> int main(){ return 0; }gcc -v test.cと-v オプションをつけると、詳しい状況が表示されます。これをつかってインクルードパスについて調べみた。 -v で調べてみたら・・ takuya@air:~$ gcc -v test.c Using built-in specs. Target: i686-apple-darwin11 (略 #include "..." search starts here: #include <...> search starts here: /usr/llvm-gcc-4.2/bin/../lib/gc

    gccのインクルードパスについて調べたこと - それマグで!
  • gemパッケージ の作り方 - それマグで!

    rubyでコードを書いてるとライブラリのパスだとか,モジュールの依存関係とかめんどくさくなってくる.あとGithubなどに置いておきたくなる.github にコードを置いてgem パッケージにしたい.*1ライブラリのロードパスを解決したい 2011-05-17追記 rubygems のページを見ると, jeweler /gem push でやれって書いてあった。 http://help.rubygems.org/kb/gemcutter/publishing-your-own-rubygem gem を作るなら以下の、私の記事のやり方で構わないです。rubygemsに公開するなら上記URLに従う方が良いです. gemの作り方 ・gem作成用のパッケージをインストール ・Gemの名前を決める ・Gemのひな形を作る ・空っぽのパッケージを作ってみる ・Libにソースを書く ・テストのソースを

    gemパッケージ の作り方 - それマグで!
  • rsync でよく使うオプション - それマグで!

    rsync 便利です。以前まとめたけど、あれはやり過ぎたので、よく気になる部分だけを抜粋した 最初に覚えるべき rsync rsync -avz /path/to/source/dir/ /path/to/destination/dir//path/to/source/dir/ の中身と /path/to/destination/dir/ に同期します。 ディレクトリをディレクトリとして送信するときは /path/to/source/dir (末尾に / をつけない) a :基的にコレつけておけば大丈夫 -r -l -p -t -g -o -D の省略形 v :様子を表示。 z :圧縮 同じマシン内であれば必要ないかと -a の実際 a は省略形です。-a = { -r -l -p -t -g -o -D } です -r ディレクトリを再帰的に調べる。 -l シンボリックリンクをリンクと

    rsync でよく使うオプション - それマグで!
    hiroyukim
    hiroyukim 2013/06/17
  • RubyのNet::SSHの使い方.リモートサーバー内でsuしたりrsyncするrubyスクリプトが作れるようになる - それマグで!

    SSHのコマンドをRubyから実行出来たら便利ですよね。シェルスクリプトとExpectでも良いんですが.Rubyパッケージを利用するともっと書きやすくなりますよね. Net::SSHパッケージ net-ssh は version 1.x と2.xがあって2.xの方がわかりにくい.普通にインストールすると2.xが入るので2.xを前提にする。 インストール gem install net-ssh 基的な使い方 リモートサーバー内にアクセスする. require 'rubygems' require 'net/ssh' Net::SSH.start('hostname', 'user', :password => 'password') do |ssh| puts ssh.exec! 'ls /etc/' end 公開鍵・秘密鍵を使ってログインする Net::SSH.start('hostna

    RubyのNet::SSHの使い方.リモートサーバー内でsuしたりrsyncするrubyスクリプトが作れるようになる - それマグで!
    hiroyukim
    hiroyukim 2012/12/31
  • druby でジョブキュー・サーバーを1分で作る。 - それマグで!

    Rubyの標準パッケージでJobQueueができます。処理を後回しにしたら早いとか、NoSQLとか、◯◯便利と言われるけど、私はdruby推したい。drubyRubyの標準パッケージで、すぐ使えて便利。 drubyとスレッドを使う druby(分散Ruby)は、マルチスレッド化にも対応した、よく出来た分散オブジェクト技術。 drubyを使えば、通常のオブジェクトをネットワークに公開できる。 今回は、Queueクラスとdrubyを作ったジョブ・キューサーバーを数行で作る。 Queue.server.rb メインとなるサーバー、たったこれだけで、キューサーバーが作れる。 #!/usr/bin/env ruby -Ku #coding:utf-8 #サーバー require 'thread' require 'drb/drb' #起動 q = Queue.new DRb.start_serv

    druby でジョブキュー・サーバーを1分で作る。 - それマグで!
    hiroyukim
    hiroyukim 2012/12/04
  • HTTPプロキシ経由でのSSH(その2) connect を使う - それマグで!

    インストール #ubuntu aptitude install connect-proxy #centos yum install connect #cygwin apt-cyg install connect-proxy connectは connect-proxy はその名前の通り、CONNETでプロキシに接続する。 CONNECTって? CONNECTは、主にHTTPS(443)通信のために使う.HTTPSは通信内容が見えないのでプロキシは中継するだけ。むしろ見てはいけない. connect コマンドはHTTPプロキシに転送要求を出します。 使い方 ~/.ssh/config 23 Host mm 24 Hostname ssh.example.com 25 ProxyCommand connect-proxy squid.example.com:3128 %h %p プロキシにログ

    HTTPプロキシ経由でのSSH(その2) connect を使う - それマグで!
    hiroyukim
    hiroyukim 2012/10/17
  • 簡易プロキシをSSHのダイナミック転送で実現する - それマグで!

    Dyamic転送が便利と聞きました。ダイナミック転送。使えるそうなので実際試しました。仕組みの解説はめんどくさいので省略. 通称はSSHのポートフォーワーディングとかポートフォーワードなんて言われる.それをダイナミック(動的)にポート指定する仕組み SSHの接続オプションでプロキシ接続が出来る SSHに接続して転送ONにする localhost:1080 に接続すれば リモートサーバーから外に出られる。 手っ取り早く言えばSSHサーバーがプロキシサーバーになると言うことです。 使い方 putty などのSSHクライアントで接続する ダイナミック転送を有効にする 有効になるとlocalhost:1080 がプロキシサーバーになる ブラウザでプロキシサーバーlocalhost:1080を指定 以上でSSH接続先からWEBアクセスが出来る. puttyでのダイナミック転送。 通常の場合PUTTY

    簡易プロキシをSSHのダイナミック転送で実現する - それマグで!
    hiroyukim
    hiroyukim 2012/10/17
  • sshの公開鍵 authorized_keys ファイルの制限機能について調べてみたら楽しかった.(実行コマンド制限など) - それマグで!

    authorized_keys ファイルについて調べてみたら楽しかった.ポートフォワード専用公開鍵とかいろいろ作れそうです authorized_keys ファイルって単に,公開鍵を入れて置く場所だと思ってました authorized_keys ファイルにはログイン時に自動実行するプログラムとか、環境変数を書いておくとか イロイロ便利な使い方があるのです. 使える設定は以下の通り ログイン時に自動適応する設定は次の通り from="pattern-list" environment="NAME=value" command="command" cert-authority tunnel="n" permitopen="host:port" no-X11-forwarding no-user-rc no-pty Prevents tty allocation (a request to al

    sshの公開鍵 authorized_keys ファイルの制限機能について調べてみたら楽しかった.(実行コマンド制限など) - それマグで!
    hiroyukim
    hiroyukim 2012/10/17
  • GNUの信者になりました。 - それマグで!

    GPL汚染とかいわれたり、コピーレフトや義務云々の話を読んだりしていると、GNUってちょっと・・・と思ってた。 でも最近の状況を見るにつけ、ストールマンは正しいんじゃないかと僕も信じ始めた。 ストールマンの書籍を読むキッカケ このエントリを読んで、ストールマンを『再発見』した。 ストールマンが30年も我々に警告してきた脅威なのだ。それなのに我々は、私も含めて、彼を真面目に取り合って来なかった。しかし、世界が変わろうとしている今この時、自分のデバイスで実行されているコードを検証できるということの大切さは、誰の目にも明らかである。もし、我々が、自分の所有するコンピューターを検証することができなければ、我々は奴隷だ。 の虫: リチャード・ストールマンは常に正しかった 孫引きですが、其の言葉が自分の不安に一致するものがあった。 ストールマンのエッセイ集をよんだ。 ストールマンの言ってることってそ

    GNUの信者になりました。 - それマグで!
    hiroyukim
    hiroyukim 2012/06/26
  • vimで連番を作る。 - それマグで!

    Vimで連番を作りたかった。意外といろいろな方法があるんです。今回はViマクロを使って、Vimによる連番を実現しました。 次のような連番ファイルを作りたかった。 debian0 debian2 debian3 debian4 debian5 debian6 debian7 debian8 debian9 負けパターン:先に10行かく(yy10p) これを書くと詰みます。連番になりません。 debian0 debian0 debian0 debian0 debian0 debian0 debian0 debian0 ここから先、連番にするのが面倒でした。 勝ちパターン:一行ずつ処理する。 連番なので、一つずつ作るのが勝ちパターン。EmEditorや秀丸マクロでも、こちらのアプローチで進めるのが確実です。 行コピーして (yy p) debian0 debian0 末尾に移動、数字をインクリメ

    vimで連番を作る。 - それマグで!
    hiroyukim
    hiroyukim 2010/05/03
  • Rubyで巨大ファイルを読み込むときに進捗率を表示したい - ブックマクロ開発に

    Rubyを使ってバッチ処理や集合演算をするときに、ファイルをどこまで読み込んだかパーセント表示したい。表示しておかないとどこまで処理しているかが分からないので不安になる。処理状況を表示する。 File#linenoを使えばいいかと思ったが、File#linenoはFile#readやFile#readlinesなどを一度実行しないと、ファイルの行数が分からないようなので。。。ポインタの位置から進捗を見ることにする。 進捗率の表示 進捗を%表示で見せるサンプル open filename do |f| size = File.size f.path f.each_line do |line| #do something... $stderr.print sprintf("%.3f%",f.tell.to_f/size.to_f*100)+"\r" end end 解説: File.sizeで

    Rubyで巨大ファイルを読み込むときに進捗率を表示したい - ブックマクロ開発に
    hiroyukim
    hiroyukim 2010/01/04
  • 1