query: tag:shell

grepコマンドの検索結果を色付けできるなんて!の続き。

grepとlessの組み合わせはよくしますよね。

しかし、さきの記事の方法では、lessでの出力がうまく色づけされません。

うまく色づけするには、以下が必要です。

  • grepのオプションで、 --color=always を使う
  • lessのオプションで、 -R を使う

1つ目は、grepの検索結果を常に色づけるもの。
2つ目は、lessでの表示でエスケープシーケンスを解釈させるもの。

この2つを設定していれば、うまく色づけされた結果をlessで見ることができます。

posted by y_tsuda y_tsuda on Fri 12 Dec 2008 at 20:24 with 0 comments

何気なくman grepしたときに知りました。

今まで完璧にスルーしてましたね。

man>>
$ man grep


--colour[=WHEN], --color[=WHEN]
Surround the matching string with the marker
find in GREP_COLOR environment variable. WHEN
may be ‘never’, ‘always’, or ‘auto’


<<man

見つけたときは、「なん・・・だと・・・?」となってしまいました。

実際に色付けしてみると、こんな感じになります。

grep_color.bmp

普段からよく使ってるコマンドの man を見たりすると、何か新しい気づきがあるかも・・・?

posted by y_tsuda y_tsuda on Fri 12 Dec 2008 at 14:58 with 0 comments

先日、lchinさんがブログで紹介していたシェル fish をCentOSにインストールしてみます。

「fish」(Friendly Interactive SHell)を使ってみる - レオメモ - s21g

yumのレポジトリの追加

fishをインストールするには、dagレポジトリを追加する必要があります。

fishをインストール

レポジトリの追加が完了すると、普通にyumでインストールできます。
shell>>

yum install fish

<<shell

fishを使ってみる

fishを使用している様子は、Ichinさんの記事公式のスクリーンショットを参考に。

10分くらい触った感想を箇条書きで...

  • ものすごくカラフル
  • 補完機能が便利(manのあととか、サブコマンドとか、オプションとか軽い説明つきで候補が表示される)
  • いちいちカラフル

これからしばらくfishを使ってみようと思います。

以上、fishの速攻レビューでした。

参考になりそうなページ

fishが紹介されているページを適当に探してみたので、あとで参考にしよう。

posted by y_tsuda y_tsuda on Thu 27 Nov 2008 at 11:56 with 0 comments

先日に参加したRailsイベントfishというものを紹介してもらった。zshbashのようにUnixで使うコマンドシェルですが、fishのフルネーム(Friendly Interactive SHell)からもわかるように、使いやすさと対話的な利用を目的としている。以下の特徴があるらしい:

  • 基本的に色付けをする
  • シンタクスハイライト
  • コマンドやオプションのスペルチェック
  • htmlヘルプ (help打ったらブラウザが起動する)
  • 説付きTAB補完
  • サブシェルがない
  • ミニマルかつシンプルな文法

Mac OS Xでインストールするには:
shell-unix-generic>>
% sudo port install fish
<<shell-unix-generic

Mac OS Xでfishchshしたければ、/etc/shellsfishを追加しなければならない。

shell-unix-generic>>

List of acceptable shells for chpass(1).

Ftpd will not allow users to connect who are not using

one of these shells.

/bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh
/opt/local/bin/fish
<<shell-unix-generic

使ってみるとこんな感じ:

  • 書きかけのコマンドが赤色
    fish01.jpg
  • 存在しているコマンドが緑色
    fish02.jpg
  • helpw3mが起動する
    fish03.jpg
  • funcedでビルトインの実装をみる(インデント、シンタクスハイライトあり)
    fish04.jpg
  • manもスマートに補完されている
    fish05.jpg

今までは正直zshbashのほとんどの機能を使っていませんし、しばらくはfishchshしてメインシェルとして使ってみることにする。

posted by lchin lchin on Tue 25 Nov 2008 at 19:43 with 0 comments

IPアドレスのソートがちょっと面倒。

普通にRubyを使ってIPアドレスをソートしようとすると、
ruby>>
ip_addrs = ["192.100.100.1", "192.11.11.1", "192.11.100.1"]
ip_addrs.sort
#=> ["192.100.100.1", "192.11.100.1", "192.11.11.1"]
<<ruby
となって、きちんとソートされない。
まぁ、当たり前と言えば当たり前なんですが・・・。

きちんとソートするためには、こんな感じにしてみる。
ruby>>
ip_addrs.sort_by{|a| a.split(".").map{|i| "%3d" % i.to_i}}
#=> ["192.11.11.1", "192.11.100.1", "192.100.100.1"]
<<ruby

もうちょっと綺麗に書けんなぁ?
"%3d"とか、なんか嫌やなぁ。

ちなみにシェルだと、
shell-unix-generic>>
$ echo '
192.100.100.1
192.11.11.1
192.11.100.1
' | sort -t . -k 1,1 -k 2,2 -k 3,3 -k 4,4 -n

192.11.11.1
192.11.100.1
192.100.100.1
<<shell-unix-generic

とかできるけど、-kオプションが気に入らない感じ。

もっと綺麗に書ける方法はないのだろうか・・・。

posted by y_tsuda y_tsuda on Mon 15 Sep 2008 at 17:45 with 3 comments

サーバーを再起動したらmysqlが起動していなかった。 サービスとして登録するには以下。
shell-unix-generic>>

chkconfig --list mysqld

mysqld 0:off 1:off 2:off 3:off 4:off 5:off 6:off
#chkconfig --level 345 mysqld on
#chkconfig --list mysqld
mysqld 0:off 1:off 2:off 3:on 4:on 5:on 6:off
<<shell-unix-generic

posted by ysakaki ysakaki on Wed 6 Aug 2008 at 17:22 with 0 comments

ちょっと使ってみて良い感じだったので紹介します。

Rak

Rak is a grep replacement in pure Ruby. It accepts Ruby syntax regular expressions and automatically recurses directories, skipping .svn/, .cvs/, pkg/ and more things you don't care about. It is based on the Perl tool ack by Andy Lester.

Pure ruby で書かれた grep みたいな感じですね。
なんといっても見た目が美しい。

rak_demo

デフォルトで再帰的に、.svn や .cvs を無視して検索してくれる
というのも良い感じ。

RubyGemsとして提供されているので、インストールするのは

shell>>
% sudo gem install rak
<<--

でOKです。

See Also

更新履歴

  • [2007/12/5 23:08] ackへのポインタを追加。
  • [2007/12/26] ソケットファイルがある場合の問題への対処法の紹介
posted by genki genki on Wed 5 Dec 2007 at 20:40 with 0 comments