タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

bashに関するkanno_kannoのブックマーク (2)

  • シェルスクリプトでの正規表現マッチ - Qiita

    シェルスクリプトで正規表現でのマッチングを使いたい場合,少しぐぐってみると case 文を使えという内容のものがよくヒットするようですが,expr コマンドでも正規表現が使えます. #!/bin/sh if expr "aaabbc" : "b+c$" > /dev/null; then echo "hoge" fi # => hoge 正規表現を用いた場合,expr はマッチした位置や()でグループ化した結果を出力するので,要らない場合は /dev/null に捨てます. ちなみに, zsh では [[ ]] を用いて自然に正規表現が書けます.

    シェルスクリプトでの正規表現マッチ - Qiita
  • SYNPEY BLOG - bashでファイルを一行ずつ読み込んで処理する(その2)

    Just another WordPress weblogbashでファイルを一行ずつ読み込んで処理をする « SYNPEY BLOGで紹介した方法では、無条件で全行に対してループ処理を行うため、ループ内の処理を特定の行のみに行いたい場合、無駄が生じてしまう。特にループ内の処理が重い場合は、無駄が大きい。 そこで、例えば「20100101」という文字列を含む行のみに対して、ループ処理をかましたい場合は IFS=$'\n' for LINE in `cat hogehoge | grep '20100101'` do IFS=$' \t\n' echo $LINE done IFS=$' \t\n' としてやると、あらかじめgrepで絞り込んだ行のみに対して、ループ内の処理を適用できる。IFSというのは IFS: 内部フィールド区切り文字 (Internal Field Separator)

  • 1