タグ

awkに関するCaligariのブックマーク (7)

  • AWKで一番の得意ワザ! シェルで文字列を自在に扱うための文字列関数

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    AWKで一番の得意ワザ! シェルで文字列を自在に扱うための文字列関数
    Caligari
    Caligari 2016/09/08
    “grepコマンドの引数として"-o"を付けると正規表現にマッチした部分だけを抜き出す、つまり先ほどのAWKスクリプトと同じことがgrepコマンドでできてしまうのです”
  • Man page of GAWK

    Section: Utility Commands (1) Updated: May 17 2000 Index JM Home Page roff page 名称 gawk - パターン検索・処理言語 書式 awk [ POSIX or GNU style options ] -f program-file [ -- ] file ... gawk [ POSIX or GNU style options ] [ -- ] program-text file ... 解説 gawk は GNU プロジェクトが実装した プログラミング言語 AWK の処理系です。 処理系は POSIX 1003.2 コマンド言語とユーティリティ規約に定められた 言語の定義に適合しています。 バージョンはまた、Aho, Kernighan, Weinberger の著書 The AWK Programmi

  • Stray Penguin - Linux Memo (AWK)

    このサイトは、もともと作者の自分用メモとして書き始めたものです。書いてあることが全て正しいとは限りません。他の文献、オフィシャルなサイトも確認して、自己責任にて利用してください。 AWK それ自体でプログラムを組むことは少ないが、シェルスクリプト中で引数や文字列処理に使うと便利なものだ。ここでは、筆者がこれまでに BASH や AWK スクリプトの中で使ったり試したことのある処理を、スクリプト例として紹介する。参考になりそうな例があれば随時追加していく。 AWK の正規表現は Perl と同じではないが、事始めとしては Perldoc の perlrequick が役に立つだろう。 意外 ! AWKでは { } が使えない !? ファイルのタイムスタンプを求める ファイルからコメント行と空行以外の内容を読み込む(出力レコードセパレータ変数 ORS) パスワードファイルから特定のフィールドだ

    Caligari
    Caligari 2016/06/23
    "AWK 評価式全体をシングルでなくダブルクォートで囲み $変数 をシェルに直接展開させる方法もあるが、たくさんの記号を \ でエスケープしなければならなくなりデバグが大変になるため、あまりお勧めできない"
  • Charming Python: Functional programming in Python, Part 3

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    Charming Python: Functional programming in Python, Part 3
    Caligari
    Caligari 2016/06/21
    “bash や Python でこのようなことはできません”perlならできるよ
  • なるべく書かないawkの使い方 - ザリガニが見ていた...。

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

    なるべく書かないawkの使い方 - ザリガニが見ていた...。
    Caligari
    Caligari 2016/06/21
    ブクマ数多すぎィ
  • awkユーザーのためのPerlワンライナー - 忘れないようにメモっとく

    awk(と他のコマンド)ユーザーがPerlワンライナーを覚えるとうれしいこと↓↓ -aオプションでawkと似たような書き方ができる(awkとの比較を参考) カラム1とカラム2を表示 awk '{print $1, $2}' perl -waln -e 'print $F[0], $F[1]' awkよりperlの方が速い場合がある 例えば-aオプションを使わないとき、$F[0]などをレコードごとに生成しないのでperlの方が速く実行できる場合がある(awkはレコードごとに$1などを生成する) awk 'BEGIN{sum=0};{sum+=1};END{print sum}' file.txt perl -wln -e 'BEGIN{my $sum=0}{$sum+=1}END{print $sum}' file.txt 正規表現をperlだけ覚えればいい(awk, sed, grepのコ

    awkユーザーのためのPerlワンライナー - 忘れないようにメモっとく
  • やっぱりawkは遅い - hogehoge @teramako

    外部コマンドは遅い。できるだけbuilt-inコマンドを使おうって話。 シェルでよくあるんだけど、ある区切りの○番目を取ってきたい、っていう場面で foo="aaaa,bbbb,cccc" bar=`echo $foo | awk -F, '{print $2}'` ってやる時がある。 けど、これ、むちゃくちゃ無駄。一回しか実行されないなら大したボトルネックにはならないが、ループの中で使うと酷い事になりがち。 awkの場合 #!/bin/sh typeset -i i=0 while (( i < 10 )) do echo "aaaa,bbbb,cccc" | awk -F, '{print $2}' >/dev/null i=$(( i + 1 )) done $ time ./awkTest.sh real 0m0.129s user 0m0.031s sys 0m0.098s re

    やっぱりawkは遅い - hogehoge @teramako
    Caligari
    Caligari 2016/06/10
    で、どっちなの?保守ってプログラマとは違うの?
  • 1