タグ

ブックマーク / zariganitosh.hatenablog.jp (6)

  • コマンド履歴の達人を目指してみる - ザリガニが見ていた...。

    ターミナルのコマンド履歴をインクリメンタルに検索して実行するにはControl + R - Macの手書き説明書 自分も知らなかった...。まだまだ知らないことって、いっぱいある。 それにしてもコマンド履歴というのは、自分はよく使う。直接入力するより、過去の履歴を探し出して、必要な修正してからコマンド実行するパターンが多い。長〜いファイルパスやオプション指定のあるコマンドなんて、ほとんどがコマンド履歴の修正と実行である。コマンド履歴が使えるからこそ、快適なコマンド操作ができると思っている(自分の場合)。 コマンド履歴は質実剛健なコマンドの世界に、選択して実行するというGUI的なゆるい操作感を与えてくれる。コマンドを忘れる心配や、スペルを間違う心配から、救ってくれる。それほどまでにコマンド履歴に頼りきっている状況なのに、今日も上下の矢印キーを激しく連打するしかない自分は、一体どうしたら良いも

    コマンド履歴の達人を目指してみる - ザリガニが見ていた...。
  • なるべく書かないawkの使い方 - ザリガニが見ていた...。

    awkという、古くからのスクリプト言語がある。(1977年生まれ。読み方は「オーク」である。エイ・ダブリュ・ケイではない)man awkをPDFに変換してみると、たったの3ページ強しかない。 $ man -t awk|pstopdf -i -o ~/Downloads/awk.pdf とてもシンプルな言語仕様ではあるが、awkには必要十分な表現力がある。特にテキストを処理する場面においては、最小限のシンプルな記述で、気の利いた処理を素早くこなす。無駄のないawkワンライナーを見ると、ある種の感動を覚える。awk以降に生まれたスクリプト言語は、少なからずawkの影響を受けていると思われる。 awkを知ることで、間違いなく幸福度は上がると思う。いつかきっと「知ってて良かった」と思える時が来るはず。もっともっと、awkを知りたくなってきた。 基動作 awkの基動作は、とってもシンプルである。

    なるべく書かないawkの使い方 - ザリガニが見ていた...。
  • 必要最小のgemの作り方とインストール - ザリガニが見ていた...。

    gemは、Rubyのライブラリ管理のコマンド。Rubyのライブラリを検索・インストール・アップデート・削除など、苦労最小で操作する仕組みを提供してくれる。今までgemを使って、多くの素晴らしいライブラリをインストールしてきた。しかし、自分が作ったものをgemでインストール可能な形式で公開したことはなかった...。 できることならgemでインストールできるようにしてみたい。では、自作のRubyコードは、どうすればgemでインストールできるようになるのか?果たして、簡単にできることなのか?調べてみた。 作業環境 MacBook Pro Retina15 OSX 10.9.5 Rubyバージョン $ ruby --version ruby 2.0.0p481 (2014-05-08 revision 45883) [universal.x86_64-darwin13] Gemバージョン 最新のG

    必要最小のgemの作り方とインストール - ザリガニが見ていた...。
  • なるべく覚えないbashのキー操作 - ザリガニが見ていた...。

    ターミナル&bashでコマンドラインを編集する時、実にいろいろなキー操作がある。便利そうだからと、あれもこれも覚えようと欲張るのだけど、すぐに忘れてしまう...。もっと厳選して覚えておかなくては。自分にとって必要最小限のキー操作を探ってみた。 勝手な方針 OSX環境のキーバインドが使える場合は、そちらを優先する。 ホームポジションの維持にこだわらない。 よって、矢印キー・deleteキーなども遠慮なく使う。 カーソル移動 行頭・行末・単語区切りの移動で、カーソルを素早く動かす。 マウスカーソルで指定すれば、クリックした位置にジャンプする。 control-A・E 行頭・行末へ移動 option-←・→ 1単語ずつ移動 option-クリック クリックした位置へ移動 削除 行頭・行末・スペース・単語区切りの削除によって、修正を楽にする。 control-U・K 行頭・行末まで削除 contr

    なるべく覚えないbashのキー操作 - ザリガニが見ていた...。
  • シェルスクリプトでコマンドを作るまで - ザリガニが見ていた...。

    最近、俄然、興味が湧いてきたコマンド。もし、欲しい機能に見合うコマンドがなかったら、自分で作るしかない。そのうち作ってみたいという希望もある。調べてみた。 作業環境 MacBook OSX 10.6.2 bash シェルスクリプトは今までも多少なりとも使っていたので、片言だがなんとか使っている。 基 以下のスクリプトを~/Documents/hello.shとして保存した。 #!/bin/sh echo Hello, World! hello.shに実行権限を与える。 $ chmod +x ~/Documents/hello.sh パスを指定して呼び出せば、Hello, World!と表示された。 $ ~/Documents/hello.sh Hello, World! 引数の処理 有用なコマンドは、ほぼ間違いなく引数を伴う。 引数で渡されたデータを処理して、価値のある情報を出力してくれ

    シェルスクリプトでコマンドを作るまで - ザリガニが見ていた...。
  • Rubyのハッシュテーブルの仕組みを徹底的に理解する - ザリガニが見ていた...。

    ハッシュとは 一般的に理解すると抽象的で分かり難くなってしまうが、ハッシュとは、あるデータから、一定の計算をして求めた、目的に沿った数値、と思っている。それでは、どのような目的に利用されるのか?自分の知識で考えてみた。 暗号化 webアプリケーション等で、パスワードをDBに保存する時、生のパスワードをハッシュに変換して保存する。 Digest::SHA1.hexdigest等で求めたハッシュから、元のデータを復元するのが非常に困難という特性を利用する。 保存しているパスワードハッシュが、たとえ漏洩したとしても、不正利用を防止できる。 パスワードを照合するときも、ハッシュに変換して、保存しているパスワードハッシュと一致するかどうかで判断する。 同等の確認 長い文字列データを比較する時、全ての文字が等しいかチェックするのは非常に時間がかかる。 しかし、長い文字列データをハッシュに変換しておき、

    Rubyのハッシュテーブルの仕組みを徹底的に理解する - ザリガニが見ていた...。
  • 1