タグ

bashに関するkaghanのブックマーク (3)

  • Bashの変数パラメータ展開のまとめ - harry’s memorandum

    Bashのパラメータ展開はすぐに忘れてしまうのでメモ。 変数の文字数 ${#parameter}で変数の文字数を調べることができます。 name=/var/log/boot.log echo ${#name} 17 wcやawkコマンドを使う方法がありますがスマートではありません。*1 $ n=`echo $name | wc -c`; echo $(($n-1)) 17 $ echo $name | awk '{ print length($0)}' 17 配列も同じように配列数を調べることができます。 $ array=(a b c d e) $ echo ${array[0]} a $ echo ${#array[@]} 5 変数パラメータ展開 変数を切り出せます。ファイル名やディレクトリ名を簡単に切り出すことができます。 $ name=/var/log/boot.log $ echo

    Bashの変数パラメータ展開のまとめ - harry’s memorandum
  • cutコマンドで文字列を抜き出す? ちょっと待って!Bashパラメータ展開で72倍早くできるかも : NETBUFFALO

    数万件のファイルの中からある文字列(値)だけを抜き出だすシェル・スクリプトがあったんですが、7分ぐらい時間が掛かるんです。 遅すぎだろ!、と思いつつ中身みると特段効率が悪い書き方という訳ではなかったんですが、Bashのパラメーター展開が使えるレベルの抽出処理だったので速度を比較して見ることに。

    cutコマンドで文字列を抜き出す? ちょっと待って!Bashパラメータ展開で72倍早くできるかも : NETBUFFALO
    kaghan
    kaghan 2014/03/31
  • bash の履歴入力で前方一致検索を有効にする

    bash で履歴を利用するときに、遡って探すのが面倒くさいときがあります。このときに先頭数文字だけ入力してから Ctrl + P、Ctrl + N を押すと、それまでタイプした文字から始まる履歴だけを検索してくれる技です。 ホームディレクトリの .inputrc というファイルに "\C-n":history-search-forward "\C-p":history-search-backward のように書いて、再度ログインし直すと、この機能が有効になります。サイログインせずに反映させたい場合は bash のプロンプト上で Ctrl-X Ctrl-Rと入力します。 たとえば vi と打ってから Ctrl + P を押せば、過去に使ったコマンド履歴の中から、vi を使った履歴だけが出てくるので便利です。 カーソルキーの↑,↓ でも有効にしたい場合は、さらに "\e[A":history-

  • 1