grep と awk

grep ... global regular expression pattern (大域正規表現パターン)

awk ... Aho, Weinberger, Kernighan


練習問題

  1. ~/coreinfo ディレクトリで練習すること。

  2. ウェブサーバへのアクセスはログに記録される。タイピング成績登録のログを ~tkikuchi/coreinfo/data/TX.log に置いてあるので、cp (コピー)コマンドを用いて、カレントディレクトリにコピーしなさい。(必要に応じてオンラインマニュアルを参照すること)

  3. 自分がアクセスした記録を grep によって取り出し、myaccess.log というファイルに入れなさい。

  4. ログの形式では1番目のフィールドがホスト名、3番目のフィールドが認証ユーザ名となっている。ホスト名とユーザ名だけを表示しなさい。

  5. ユーザ名を表示し、アクセス回数の多い10人とその回数を topten.log というファイルに入れなさい。

  6. history コマンドの結果を hist6 というファイルに入れなさい。


補足

C シェルでは、{ } [ ] * ? などは特殊文字である。このため、これらの文字を grep や awk に引数として渡すには、エスケープする必要がある。\ を用いると1文字ごとにエスケープするが、まとめてエスケープするには ' ' (シングル・クォート)を使って上の使用例のように入力する。

<a href="http://www.is.kochi-u.ac.jp/~tkikuchi/>菊地のホームページ