タグ

grepに関するU1and0のブックマーク (20)

  • Pythonでファイル内の任意の文字列を含む行を抽出(grep的処理) | note.nkmk.me

    Pythonでテキストファイル内の任意の文字列を含む行を抽出する方法を説明する。いわゆるgrep的な処理。 行を抽出する基的な流れ 行の中身を抽出 行番号を抽出 行番号と行の中身を抽出 該当する最初の行のみ抽出 行を抽出する基的な流れ テキストファイルから条件に応じて行を抽出する基的な流れは以下の通り。 readlines()で各行を要素とするリストを取得 リストから条件に応じた行を抽出 以下、具体的な例を示す。 テキストファイルの中身をリストとして取得 以下のファイルを例とする。 path = 'data/src/sample_for_grep.txt' with open(path) as f: print(f.read()) # XXX YYY ZZZ # YYY # aaa # XXX # ZZZ XXX # xxx

    Pythonでファイル内の任意の文字列を含む行を抽出(grep的処理) | note.nkmk.me
  • jq

    jq is a lightweight and flexible command-line JSON processor. jq is like sed for JSON data - you can use it to slice and filter and map and transform structured data with the same ease that sed, awk, grep and friends let you play with text. jq is written in portable C, and it has zero runtime dependencies. You can download a single binary, scp it to a far away machine of the same type, and expect

    U1and0
    U1and0 2018/09/15
    jq is like sed for JSON data - you can use it to slice and filter and map and transform structured data with the same ease that sed, awk, grep and friends let you play with text.
  • ctags etags gtags: How to Find Where a Function is Defined or Called?

    U1and0
    U1and0 2018/06/20
    “using grep is much slower, because everytime it needs to search all the files. That's why ctags creates a index files first, which is basically the one-shot search result of all function names.)”
  • Pythonでgrepやawkのような行の抽出を行う | 俺的備忘録 〜なんかいろいろ〜

    最近ちょこちょこPythonを触る機会が多くなってきたのだが、処理の中でgrepやawkのように行の抽出をさせたいことがある。 Subprocessでgrepとかawkを呼び出すのはかっこ悪いし、Python内で処理を完結させたいというのもあったので少し調べてみた。 1.指定した文字列を含む行を抽出 1-1.基的な抽出方法 Pythonでgrepのような処理を行うには、find('文字列')を用いてその文字列を含む数を指定することで抽出が可能だ。 以下、記述例。 # -*- coding: utf-8 -* import sys ld = open(sys.argv[1]) lines = ld.readlines() ld.close() for line in lines: if line.find("文字列") >= 0: print line[:-1] [root@BS-PUB-

  • Feature request: --directories · Issue #169 · BurntSushi/ripgrep

    U1and0
    U1and0 2018/05/06
    rgのファイル検索はsecondaryな機能で、file検索はfindより早いけれどもdirectory検索をできるようにxargsやsortを挟むとfindより遅くなってしまう。
  • Grep on elements of a list

    I have a list of files names: names = ['aet2000','ppt2000', 'aet2001', 'ppt2001'] While I have found some functions that can work to grep character strings, I haven't figured out how to grep all elements of a list. for instance I would like to: grep(names,'aet') and get: ['aet2000','aet2001'] Sure its not too hard, but I am new to Python update The question above apparently wasn't accurate enough.

    Grep on elements of a list
    U1and0
    U1and0 2018/04/25
    pythonでリスト要素に対してgrep“>>> [name for name in names if 'aet' in name]”
  • agとptとripgrep,どっちがどうでどれを使えばいいのか調べた予習 - Lambdaカクテル

    イマドキの高速検索系ツールといったらagっしょ,みたいな気持ちでいたら最近はptというのがあるらしいですね.流行についていけないのでもうおじさんです. 他にもこの手のツールとしてripgrepなどがあります.流行り廃りの激しいツールのジャンルってありますよね.タスクランナーとか. tl;dr 混在したエンコーディングを横断して検索したい?⇒ripgrepを使おう 圧縮したファイルの中も検索したい?⇒agを使おう バックレファレンスと先/後読みを使いたい?⇒agを使おう 独自のファイル形式を定義したい?⇒ripgrepを使おう 速いほうがいい?⇒ripgrepを使おう ポータブルなシングルバイナリが欲しい?⇒ptを使おう agの復習 そもそもagが生まれた?背景はどういったものだったのでしょうか.ag以前にあった全文検索系ツールを調べてみます. ag(1) – The Silver Sear

    agとptとripgrep,どっちがどうでどれを使えばいいのか調べた予習 - Lambdaカクテル
    U1and0
    U1and0 2018/03/14
    grep, ag, pt, ripgrep機能まとめ
  • ripgrep is faster than {grep, ag, git grep, ucg, pt, sift} - Andrew Gallant's Blog

    ripgrep is faster than {grep, ag, git grep, ucg, pt, sift} In this article I will introduce a new command line search tool, ripgrep, that combines the usability of The Silver Searcher (an ack clone) with the raw performance of GNU grep. ripgrep is fast, cross platform (with binaries available for Linux, Mac and Windows) and written in Rust. ripgrep is available on Github. We will attempt to do the

    U1and0
    U1and0 2018/03/03
    search command
  • ackを捨てて、より高速なag(The Silver Searcher)に切り替えた - Glide Note

    Geoff’s site: The Silver Searcher: Better than Ack ggreer/the_silver_searcher · GitHub パターン検索にはackを利用していて、通常利用時には特に不満は無かったんですが、 ファイル数が多いディレクトリだと遅かったので、もっと他の方法が無いかと調べていたら ackの3〜5倍速いというThe Silver Searcherというものが あったので導入。 The Silver Searcherの特徴 公式に書いてあるThe Silver Searcherの特徴 ackの3〜5倍高速 .gitignore、.hgignoreに記載されているものを検索対象から除外 検索対象から除外したいファイルは.agignoreに記載 agというコマンド名で、ackと比べてコマンドが短い(33%減!) なぜ高速なのかは https

  • Vimメモ : ag.vimでVimからag(the_silver_searcher)を利用して検索 - もた日記

    ag(the_silver_searcher) github.com agとはgrepやackのようにパターン検索できるコマンドで、他のコマンドに比べると検索が速いのが利点。 例えば、下記コマンドだとカレントディレクトリ以下から再帰的にgemというパターン(大文字小文字無視)を検索できる。 $ ag -i gem . インストール方法 agのインストール方法は下記リンクを参照。 GitHub - ggreer/the_silver_searcher: A code-searching tool similar to ack, but faster. ag.vim github.com このagコマンドをVimから呼べるようにしたのがag.vimプラグイン。 ag.vimのインストール NeoBundleの場合は下記行をvimrcに追加。 もちろんagを使うのでagはあらかじめインストールし

    Vimメモ : ag.vimでVimからag(the_silver_searcher)を利用して検索 - もた日記
  • watchコマンドが無い時の代替案 - 自分の仕事を憎むには人生は余りにも短い

    ファイルが切り替わるタイプのログとかps -efの結果を定期的に関ししたい時とかwatchがすごく便利。 watch -d 'ps -ef | grep gara' とか書いとくだけで秒間隔でコマンドの実行結果を確認できる。 って言いたいんだけどお客さんの環境とか、なんやかんやによってはwatchがインストールされて無い事が有る。 そんな時は自分で似たようなものをつくればよい。ワンライナーで while true; do date; ps -ef |grep gara; sleep 1; clear; done; でいける。画面を消したくなければ while true; do date; ps -ef |grep gara; sleep 1; done; 出力はこんな感じ ubuntu /home/gara% while true; do date; ps -ef |grep gara;

    watchコマンドが無い時の代替案 - 自分の仕事を憎むには人生は余りにも短い
    U1and0
    U1and0 2017/06/01
    “ while true; do date; ps -ef |grep gara; sleep 1; clear; done; ”
  • lsでディレクトリのみ,ファイルのみ,表示する - yuyunko's blog

    あるディレクトリに,ファイルとディレクトリがたくさんあって,ディレクトリのみ見たい! ファイルのみ見たい!っていうときの方法がわからなかったので調べた. ディレクトリのみ ls -F | grep / ファイルのみ ls -F | grep -v / 世の中には賢い人がいるもんだ.

    lsでディレクトリのみ,ファイルのみ,表示する - yuyunko's blog
    U1and0
    U1and0 2016/12/04
    ディレクトリのみ ls -F | grep / ファイルのみ ls -F | grep -v /
  • better than grepなackを試してみた

    better than grepなツールack がタイムラインでちょっと話題になっていた ので、試してみました。find+grepより速くて良いね。 OSXならbrewでインストールするとお手軽なんでしょう。 % brew install ack デフォルトで再帰検索してくれます。.gitとか.svnディレクトリは勝手に 無視してくれるようです。 % ack hoge test/test-twittering-mode.el 405: (setcdr (assoc 'in-reply-to-screen-name status) "hoge") 407: (test-assert-string-equal " in reply to hoge" 検索対象の拡張子は"ack –help-types"で確認出来ます。-kオプションを 付けると、すべてのファイルを対象にします。 % ack -k

    U1and0
    U1and0 2016/10/23
    デフォルトで再帰検索してくれます。.gitとか.svnディレクトリは勝手に 無視してくれるようです。検索対象の拡張子は"ack --help-types"で確認出来ます。-kオプションを 付けると、すべてのファイルを対象にします。
  • git-grep(1)

    ワークツリーの中の追跡されているファイル群、インデックスファイルに登録されたデータ、 もしくは与えられたツリーオブジェクトのデータの中から、指定されたパターンを検索します。 --cached ワーキングツリー内のファイルを探す代わりに、 インデックスファイルに登録されている塊を調べます。 -a --text バイナリファイルをテキストファイルのように扱います。 -i --ignore-case パターンとファイルの大文字小文字の違いを無視します。 -I バイナリファイルはパターンにマッチさせません。 --max-depth <depth> コマンドラインから与えられたそれぞれの<pathspec>における、下るディレクトリの最大<深さ>を表します。 負の値を与えられた場合、制限なしを意味します。 -w --word-regexp 単語境界(行頭か単語に含まれない文字で始まり、行末か単語に含

  • grep コマンド | コマンドの使い方(Linux) | hydroculのメモ

    grep コマンド 2017/01/04 ファイルや標準入力から正規表現でマッチする行を探し出すコマンド。 ログファイルの中から特定のログを探し出したり、ソースコードのコード検索したり、いろいろな目的で使う。 ※ grepよりも高速に検索できる ack-grep などもある。 ※ Perlには同じ名前のgrepという関数がある。 ※ git管理下のディレクトリの場合には git grep も便利。 基的な使い方 2016/01/25 grep [オプション...] パターン [ファイル...] パターンを最後に書きたい場合は以下のように -e で明示的にパターンを指定する。 grep [オプション...] [ファイル...] -e パターン ファイルを指定しないと標準入力をパターンマッチングする。 私がソースコード一式のディレクトリの中から特定の単語を探すときには、再帰的に検索、かつ行番

  • linux サブディレクトリ配下のファイルをgrepする

    サブディレクトリ配下のファイルをgrepする方法を紹介します。 コマンド書式grep -r 検索文字列 ディレクトリ 実行例/etc配下で、startを含むファイルをgrepする。 grep -r start /etc ※ -lをつけるとバイナリファイルを除外できる。(バイナリファイルは検索対象外にしたいから普通はつけた方がよい) おまけ以下のでも同じような事が実現できます。 find /etc -type f -print | xargs grep hoge /dev/null 参考サイト以下のサイト参考にさせていただきました。 ありがとうございました。 yahoo知恵袋

  • aabbdd

    U1and0
    U1and0 2016/08/19
  • grepでファイル内を検索しよう

    <IT技術の処方箋:grepでファイル内を検索しよう> grep コマンドを使うと ファイルの中をテキスト検索できます。 ●一番簡単な使い方、 検索したい文字をxxx とすると、こんな感じ。 $grep xxx ./* ./*は、そのディレクトリにあるファイル全部。 ●ディレクトリ以下、全てのファイルを検索して、 ファイルの一覧を出したいときは、こんな感じ。 $grep -ilr xxx ./ ※オプションの説明 i :大文字小文字関係無し l :ファイル名のみ表示 r :指定したディレクトリ以下を対象

  • grepコマンドで覚えておきたい使い方14個(+3個) | 俺的備忘録 〜なんかいろいろ〜

    LinuxやUnixを使っていく上で、どんなに経験が浅くても一度は利用するgrepコマンド。 今回は、このgrepコマンドで覚えておきたい使い方について紹介する。 なお、ここで扱うgrepコマンドはLinuxのものをベースに記述している。商用UNIXやBSD等の場合、オプションなどが異なる事があるので注意。 1.基の使い方 まずは基的な使い方から。 テキストファイルから特定の文字列を含む行のみ出力する。 grep 検索したい文字列 検索したいテキストファイル ワイルドカードを用いる事で、複数のファイルを指定してgrepを行う事も出来る。 コマンドの出力結果から検索する場合は、「|(パイプ)」を利用する。 コマンド | grep 検索したい文字列 2.複数の条件でor検索する 複数の条件で検索を行う場合、eオプションを付与する。 grep -e 検索したい文字列1 -e 検索したい文字列

    U1and0
    U1and0 2016/03/25
  • 【Linux】複数あるファイルの中から特定の文字列を検索するコマンド

    複数あるファイルの中から特定の文字列を検索したいときのLinuxコマンド。 $ find ./ -type f -print | xargs grep 'hoge' 【上記コマンドの説明】 find find の次で指定したディレクトリ以下のファイルを検索する。 ファイル検索の構文は「find [path] [検索条件] [アクション]」 — ./ 今いるディレクトリ以下が検索対象。「~/」とするとホームディレクトリ以下が検索対象となる。 ./ の代わりにフルパスでも可。この場合も指定したディレクトリ以下が検索対象になる。 — -print 検索結果を標準出力する。このとき結果をフルパスで表示する — -type f 指定したファイルタイプを検索する。fが通常ファイルを,cまたはdとするとディレクトリを,lとするとシンボリック・リンクを検索します。 — xargs 標準入力からコマンドライ

    【Linux】複数あるファイルの中から特定の文字列を検索するコマンド
  • 1