並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 68件

新着順 人気順

grepの検索結果1 - 40 件 / 68件

  • Hatebu Grep

    話題の記事を期間・はてブ数・カテゴリなどから検索できるWebサービスです。

    • えっちな grep をつくった - はやくプログラムになりたい

      H(uman-friendly) な grep コマンド hgrep をつくりました. github.com '\w+ で検索した時の出力 ファイルを特定のパターンで検索し,マッチした箇所を構文ハイライトしたコード片で表示します.超ざっくり言うと,ripgrep で検索して bat でマッチ箇所付近を表示するような感じです. grep -C によるコンテキスト表示に似ていますが,マッチ行が近い時は1つのコード片にまとめる,周囲何行を表示するかをヒューリスティックに少し賢く決めているなど,ちょっと出力は工夫しています. 動機 手元のリポジトリでコードを検索する時は 単純に grep で検索してマッチ結果を眺める grep | fzf のように検索結果を fzf で絞り込んだりプレビューする vim $(grep -l ...) のように検索結果をエディタで開く あたりを使い分けているのですが

        えっちな grep をつくった - はやくプログラムになりたい
      • grepを忘れただけなのに - Qiita

        去年も『本番環境でやらかしちゃった人のアドベントカレンダー』は盛り上がりましたね。 知見が多く、関心しながら拝見しています。 人は必ず何かしらミスを起こすもの。 明日は我が身と思いながら、業務をこなす日々です。 そんな私も業界に入って1年目(前々職)に、本番環境の洗礼にあったことがございます。 当時は苦々しい思いをしましたが、その経験を供養するためにもここに残そうと思います。 発生当時の状況 事件当時、私はサーバのリプレイス案件にアサインしていました。 その業務の中で上司に日常的に運用されているスクリプトの調査を依頼されました。 私はまだ経験が浅かったため理解が合っているかは怪しいですが、関わっていたシステムは設計の段階で大分やっつけだったらしく、 格納場所が間違っているスクリプトやログが散見されました。 リプレイスを切っ掛けに整理をする予定だったと記憶しています。 入ったばかりのペーペー

          grepを忘れただけなのに - Qiita
        • 画像ファイルやデータベースの文字列を「grep」のように検索できる「ripgrep-all」

          Linuxのコマンドラインで文字列を検索する際に必要不可欠なコマンドといえば「grep」です。しかし、grepは動画ファイルやPDFファイルの文字列を検索できないのが弱点。そんなgrepの弱点を克服し、動画ファイルのメタデータやデータベースのレコード、画像ファイル内の文字列まで検索可能なコマンドが「ripgrep-all(rga)」です。 GitHub - phiresky/ripgrep-all: rga: ripgrep, but also search in PDFs, E-Books, Office documents, zip, tar.gz, etc. https://github.com/phiresky/ripgrep-all rgaはLinuxに限らずWindowsやmacOSでも利用することが可能。今回はUbuntu 20.04でrgaを利用してみます。以下のコマンドを

            画像ファイルやデータベースの文字列を「grep」のように検索できる「ripgrep-all」
          • grep の「バイナリファイル (標準入力) に一致しました」が出る条件を調べていたらそれは長い旅路の始まりだった。

            はじめに 昨今では1行につき、1つの JSON を出力する様なログファイル形式も珍しくはありません。 grep しやすい データベース化しやすい これらの理由で各所で多く使われています。僕も仕事で普通に使っているのですが、ある日突然そのログファイルを集計するスクリプトで以下の様なエラーが出始めました。

              grep の「バイナリファイル (標準入力) に一致しました」が出る条件を調べていたらそれは長い旅路の始まりだった。
            • tail -F /path/to/access.log のようなストリームに対して何度でもgrepを試行錯誤できるツール filt を作った - Copy/Cut/Paste/Hatena

              filtというツールを作りました github.com これはなに まずは以下のスクリーンキャストをご覧ください tail -F /path/to/access.log のようなログの流れを止めてはgrepをして、止めてはgrepのコマンドを変更してしています。 その間、実は裏では実際のストリームは止めていません。 つまり、ストリームのパイプ先に まずfiltを指定しておく ことで、ストリーム自体は止めずに、パイプ先のコマンドを 後で何度でも 変更できます。 grepやsedやawkが下手なので何度も試行したい 私はgrepやsedやawkなどのコマンドを一発で指定できるほど練度が高くないので、コマンドを組み立てるために何度も Ctrl+C でキャンセルしては再実行の繰り返しをしていました。 最近は stern や Harvest などでKubernetesのPodのログを流すことをもある

                tail -F /path/to/access.log のようなストリームに対して何度でもgrepを試行錯誤できるツール filt を作った - Copy/Cut/Paste/Hatena
              • ast-grep VSCode: 構造検索と置換の強力なツール

                こんにちは、 ast-grepの作者Herringtonです。 正規表現でコードを検索したことがある方なら、複数行のマッチングや入れ子構造の処理、コメントの無視などに苦労したことがあるかもしれません。 そこで、ast-grep VSCodeという新しい拡張を紹介します。これは、構造的検索と置換(SSR)という技術を利用して、より正確で効率的な検索と置換を実現するツールです。 構造検索は? テキスト検索と置換の限界 例えば、JavaScriptコードをリファクタリングして、lodash の _.filter 関数をネイティブの Array.prototype.filter メソッド に置き換えたいとします。単純なテキスト検索と置換は次のようになります: これは一部のケースではうまくいくかもしれませんが、いくつかの問題があります。 一行の式しかマッチングできません。コードが複数行にまたがってい

                  ast-grep VSCode: 構造検索と置換の強力なツール
                • grep.app | code search

                  Search across a half million git repos. Search by regular expression.

                  • grepでは困難な、特定文字列の存在行から別の文字列が存在する行までの抽出 (Perlのflip-flop演算子の使い方) - 理系学生日記

                    特定の文字列がある行から、別の特定の文字列がある行までを抽出したいということがよくあります。 これgrep等を使うと苦労する話なんですが、flip-flop演算子を使ったPerlのone-linerで可能です。 例えば昨日の記事ではgit help commitの中から--no-edit/オプションの説明を抽出しました。 これは--no-editという文字列が出てくるところから空行までを抽出すれば良い。これは以下のようにすれば可能です。 $ git help commit | perl -nle 'print if /--no-edit/ ... /^\s*$/' 解説自体に空行が混じるケースでは以下のようにすれば良いでしょう。 この例では、--cleanupという文字列が出現してから、次のオプション(-文字列形式)が出るまでを抽出しています。 $ git help commit | pe

                      grepでは困難な、特定文字列の存在行から別の文字列が存在する行までの抽出 (Perlのflip-flop演算子の使い方) - 理系学生日記
                    • 僕の考えた最強のTUI grepツールを作った - ぴょこぴょこブログ

                      大きなコードベースを持ったプロジェクトでコードを書くとなった時に、書くのと同じくらい(またはそれ以上に)コードを読むことになると思います。 なので、コードの検索ツールの良し悪しは生産性に直接的に影響してくると言えるでしょう。 VSCode へのお気持ち 僕は普段はIntelliJを使っていて、その検索ツールの出来(もちろんそれ以外も)に非常に満足していますが、諸々の事情からVSCodeを使いたいという気持ちになることが多々あります。 しかし、どうしてもVSCodeの検索ツールが好きになれず移行する気持ちになれないでいました。 具体的に何が好きになれないかと言うと、Open in Editorを使用しない場合は、検索結果の周辺コードのプレビューを見るためにファイルをポコポコ開いていく必要がありツライです。Open in Editorを使用する場合は、周辺コードの情報量の調整が面倒でツライです

                        僕の考えた最強のTUI grepツールを作った - ぴょこぴょこブログ
                      • GitHub - dandavison/delta: A syntax-highlighting pager for git, diff, grep, and blame output

                        You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                          GitHub - dandavison/delta: A syntax-highlighting pager for git, diff, grep, and blame output
                        • Gitリポジトリ内をgrepする git grep はシンプルで超便利 | DevelopersIO

                          Gitリポジトリ内を検索する機会はよくあると思います。git grepコマンドを使えば、git管理下のファイルのみを対象としてgrepができます。シンプルなコマンドですが、利便性はとても高いと思います。 「このメソッドって、どこで使われてるんだっけ?」 「その定数の定義って、値は何だっけ? どこにあるんだっけ?」 「あのURLって、何箇所で使われているんだろう?」 Gitリポジトリ内を検索する機会はよくあると思います。 このメソッドって、どこで使われてるんだっけ? その定数の定義って、値は何だっけ? どこにあるんだっけ? あのURLって、何箇所で使われているんだろう? git grepコマンドを使えば、Git管理下のファイルのみを対象としてgrepができます。 シンプルなコマンドですが、利便性はとても高いと思います。 なお、grep対象はカレントブランチのみです。 目次 シンプルな例 特定

                            Gitリポジトリ内をgrepする git grep はシンプルで超便利 | DevelopersIO
                          • 画像grepツールを作ってみた - Qiita

                            経緯 ごく稀に、プロダクト内に書かれた文言の修正をすることってありますよね。 htmlやテンプレートファイルに文字列が記載されていれば、普通にgrepするなり、sedで一括置換できたりします。 問題は画像です・・・! 画像の中に置き換えなければいけない文字があることもあると思いますが、画像を目視で見ないと分からないですよね。 過去の経験的にも、あとから置き換えなければいけない文字を含む画像が見つかって、修正する・・・みたいなことを何度か経験したことがあります。 (本来は、画像内にあまり文字を書くのは良くないと思うのだけど・・・説明ページとかだと仕方ない場合もありますよね。) 画像内をgrepできたらいいのに、と思ったのでOCRを活用して画像内の文字列をテキスト化し、その中に調べたい文字列があるかをチェックするツールを作ってみたので紹介します。 OCRとは OCR(Optical Chara

                              画像grepツールを作ってみた - Qiita
                            • GitHubのCTOも注目する「grep.app」は正規表現を使ってGitHubリポジトリが検索できる

                              grep.app https://grep.app/ 「grep.app」は、正規表現を使ってGitHubリポジトリを検索できるWebサービスです。 まだローンチしたてということで、検索できるリポジトリ数は50万。全体で1億リポジトリを抱えるGitHubにおいてはまさに一部のみであるが、本家GitHubのCTOも注目するサービスとあって話題にのぼっています。 GitHubリポジトリを検索してみる 機能はいたってシンプル。Regular expressionにチェックをつけて、正規表現で検索するだけ ヒットしたリポジトリ結果をみることができます。 例えば、このように通常のAnd検索にしにくい場合であっても、簡単に引くことができます。 Hacker News Jason Warner氏もクールな仕事っぷりを称賛しています。 もし、正規表現で困ったら・・・ 便利な検索ツールも、最大の課題は、正規

                                GitHubのCTOも注目する「grep.app」は正規表現を使ってGitHubリポジトリが検索できる
                              • コードレビューにSemgrepを利用してレビュアーの目grepの負荷をなるべく減らそう - ANDPAD Tech Blog

                                ANDPADボードチームの原田(tomtwinkle)です。 前回の記事で結構反響いただけたようで注意喚起記事としては名目は果たせたかなと思います。 tech.andpad.co.jp 個人的には過去にもQiitaの自分のブログにもこんな記事 Gormとの破局、そしてFacebook/entとの出会い - Qiita を書いてるようにGorm自体にはそこまで思い入れはなく、新規にプロダクトを作る際の選択肢で検討しているなら出来ればやめた方が良いと言いたい気持ちが強いのですが……既に採用されているプロダクトなら乗り換えは大変ですよね。 以下はそんな既にGormを利用している皆さんのための内容になります。 これは何? GormのQuery Conditions関数を用いた実装を行った際に脆弱性につながる実装があった場合Pull RequestのReviewで自動的に指摘しようというやつです。

                                  コードレビューにSemgrepを利用してレビュアーの目grepの負荷をなるべく減らそう - ANDPAD Tech Blog
                                • GitHub上にあるリポジトリに対してAPIを通じてgit grepライクに走査できるツール gh-grep (gh grep) を作った - Copy/Cut/Paste/Hatena

                                  git grep 便利ですよね。 私は git grep と git gsub は本当によく使います。 ところで git grep はローカルリポジトリがないと実行できません。 ローカルにリポジトリがなければ git clone して、 git grep すればいいのですが、もう少し簡単にgrepするために gh-grep を作りました。 github.com gh-grep gh-grepはGitHub APIを使ってGitHub上のリポジトリに対してgrepをするツールです。 特徴は、全てGitHub APIを通じて実行するためローカルに git clone することなくgrepできることです。 また、APIを使っている特徴を活用して複数リポジトリに対してgrepすることなども可能になっています。 あと実行が遅いです。ひたすらGitHub APIを叩いているので...*1。 インストー

                                    GitHub上にあるリポジトリに対してAPIを通じてgit grepライクに走査できるツール gh-grep (gh grep) を作った - Copy/Cut/Paste/Hatena
                                  • ripgrep は {grep, ag, git grep, ucg, pt, sift} より速い (翻訳) - inzkyk.xyz

                                    これは Andrew Gallant 著 ripgrep is faster than {grep, ag, git grep, ucg, pt, sift} の翻訳です。英語版は UNLICENSE と MIT ライセンスのデュアルライセンスで公開されています。 この翻訳は UNLICENSE の許諾に基づいて公開されます。 この記事では新しいコマンドライン検索ツール ripgrep を紹介する。ripgrep は The Silver Searcher (ack クローン) の利便性と GNU grep の高い性能を併せ持つ。ripgrep は高速で、クロスプラットフォーム (Linux, Mac, Windows 用のバイナリが利用可能) で、Rust を使って書かれている。 ripgrep は Github で公開されている。 この記事では不可能なことを試みる: いくつかの有名なコ

                                      ripgrep は {grep, ag, git grep, ucg, pt, sift} より速い (翻訳) - inzkyk.xyz
                                    • 第579回 高速で便利なgrep「ripgrep」を活用する | gihyo.jp

                                      数多くあるUnixコマンドの中でも、もっとも利用頻度の高いもののひとつがgrepではないでしょうか。設定ファイルやログから該当する箇所を調べたり、ソースコードを検索したり、あるいはパイプラインのフィルタとして利用したりと、あらゆる場面で活躍する超基本ツールです。 とはいえgrepは機能がシンプル過ぎるため、もう少し空気を読んだ、賢い検索をしてくれる代替ツールもまた数多く存在します。たとえば本連載287回ではThe Silver Searcher(ag)を紹介しました。 とはいえこれはもう6年も前の記事です。ag以降も、いろいろな検索ツールが登場しています。そこで今回はさらに高速な検索ツールである、ripgrepを紹介します。 ripgrepとは ripgrepとは、公式サイトによると「ripgrep recursively searches directories for a regex

                                        第579回 高速で便利なgrep「ripgrep」を活用する | gihyo.jp
                                      • GitHub - ast-grep/ast-grep: ⚡A CLI tool for code structural search, lint and rewriting. Written in Rust

                                        You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                          GitHub - ast-grep/ast-grep: ⚡A CLI tool for code structural search, lint and rewriting. Written in Rust
                                        • 大規模コードベース向けASTツールのast-grepについて

                                          大規模なコードベース向けの高速なASTツールとしてast-grepというものがある。これについての調査メモ。 主に以下の公式ドキュメントを読み進めて、利用方法、パターンやルールの詳細などについて理解を深める。 ast-grepとは 公式ドキュメントでは、コードの検索からLint、codemodに至るまでASTツールとして網羅的にカバーできるツールであることが以下のように表現されている。 Think ast-grep as an hybrid of grep, eslint and codemod. 結果に精度が求められる場面では、高速であるものの精密さに欠けるテキストベースではなく、ASTベースでの正確な解析の方が望ましいだろうけど、ASTでの記述は非常に面倒になりがちという側面がある。 その点においてast-grepは、テキストベースでのgrepではなく、ASTベースでのgrepというよ

                                            大規模コードベース向けASTツールのast-grepについて
                                          • grep の -l オプション (一覧表示) と -v (条件反転) オプションを併用すると死ぬ - Qiita

                                            また, grep1 には以下のようなオプションがあります。 -v, --invert-match マッチの意味を逆にして、マッチしない行を抜き出して表示します。 -l, --files-with-matches 通常の出力はしません。その代わりに、 grep を普通に実行した際に、何らかの検索結果を表示するような入力ファイルの名前を列挙します (訳注: すなわち、-l オプションを指定すると、 -v オプションを同時に指定しない場合は、パターンにマッチする文字列を含む行が存在するファイルの名前を列挙するということです)。 個々のファイルに対する走査は、最初のマッチで終了します。 -r, --recursive 各ディレクトリの下にあるすべてのファイルを再帰的に読み込みます。 ただし、シンボリックリンクはコマンドラインで指定されたときにのみたどります。 検索対象のファイルが指定されなかった場

                                              grep の -l オプション (一覧表示) と -v (条件反転) オプションを併用すると死ぬ - Qiita
                                            • プロジェクト独自のコーディングルールを簡単に正規表現で定義できる `rubocop-grep` の活用 - ROUTE06 Tech Blog

                                              はじめに: 弊社のとあるEDI(電子商取引)関連のプロダクトでは、Ruby on Railsを利用してGraphQL APIを提供しています。 その開発活動の中で最近、コードの品質と整合性を維持するためのツールとして rubocop-grep を利用し始めました。 この記事ではその具体的な活用事例についてお話しします。 目次 rubocop-grepとは 最初のユースケースと、基本的な使い方の説明 複数のルールをディレクトリごとに設定するための工夫 ほかにどのようなユースケースがありそうか まとめ rubocop-grepとは rubocop-grep は、rubocop の拡張ツールです。 プロジェクト独自のコーディングルールを、正規表現を用いて簡単に定義することができます。 この手の問題は、今までもカスタムCopを書くことで解決することはできましたが、カスタムCopはASTの知識やRu

                                                プロジェクト独自のコーディングルールを簡単に正規表現で定義できる `rubocop-grep` の活用 - ROUTE06 Tech Blog
                                              • GitHub - vrothberg/vgrep: a user-friendly pager for grep

                                                You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                  GitHub - vrothberg/vgrep: a user-friendly pager for grep
                                                • GitHub - Genivia/ugrep: ugrep 5.1: A more powerful, ultra fast, user-friendly, compatible grep. Includes a TUI, Google-like Boolean search with AND/OR/NOT, fuzzy search, hexdumps, searches (nested) archives (zip, 7z, tar, pax, cpio), compressed files (gz,

                                                  Ugrep is a true drop-in replacement for GNU grep (assuming you copy or symlink ug to grep, egrep and fgrep), unlike many other popular grep claiming to be "grep alternatives" or "replacements" when those actually implement incompatible command-line options and use a different, incompatible regex matcher i.e. Perl regex versus POSIX regex grep (ugrep supports both) Ugrep is fast, user-friendly, and

                                                    GitHub - Genivia/ugrep: ugrep 5.1: A more powerful, ultra fast, user-friendly, compatible grep. Includes a TUI, Google-like Boolean search with AND/OR/NOT, fuzzy search, hexdumps, searches (nested) archives (zip, 7z, tar, pax, cpio), compressed files (gz,
                                                  • 正規表現でかんたんにCopを書けるRuboCop拡張 rubocop-grep をリリースしました - pockestrap

                                                    こんにちは。正規表現でかんたんにCopを書けるRuboCop拡張を作ってみたので紹介します。 github.com 使い方 まず、ほかのRuboCop拡張と同様にgemをインストールし、.rubocop.ymlのrequireにこのgemを指定してください。 この拡張は設定をしないと何も動きません。次のように.rubocop.ymlに設定をします。 Grep/Grep: Rules: # シンプルな例。正規表現にマッチした場合に、このCopが警告をします。 - Pattern: '\bENV\b' Message: Do not refer ENV directly. # パターンはArrayにして複数の正規表現を含めることができます。 - Pattern: - 'binding\.irb' - 'binding\.pry' Message: 'Debug code remains' #

                                                      正規表現でかんたんにCopを書けるRuboCop拡張 rubocop-grep をリリースしました - pockestrap
                                                    • GitHub - lizmat/App-Rak: 21st century grep / find / ack / ag / rg on steroids

                                                      You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.

                                                        GitHub - lizmat/App-Rak: 21st century grep / find / ack / ag / rg on steroids
                                                      • ast-grep | structural search/rewrite tool for many languages

                                                        AST-GREPFind Code by Syntax ast-grep(sg) is a fast and polyglot tool for code structural search, lint, rewriting at large scale. Search and Rewriteast-grep is a code tool for structural search and replace. It is like syntax-aware grep/sed! You can write code patterns to locate and modify code, based on AST, in thousands of files, interactively. sg -p '$A && $A()' -r '$A?.()' Scan as Linterast-grep

                                                        • Grep by example: Interactive guide

                                                          grep is the ultimate text search tool available on virtually all Linux machines. While there are now better alternatives (such as ripgrep), you will still often find yourself on a server where grep is the only search tool available. So it's nice to have a working knowledge of it. That's why is I've created this interactive step-by-step guide to grep operations. You can read it from start to finish

                                                            Grep by example: Interactive guide
                                                          • MySQLのprocesslistをgrep して killする myps コマンド - Hateburo: kazeburo hatenablog

                                                            なんらかの理由で MySQLにクソ重いクエリがたくさん流れてしまった場合、SHOW PROCESSLISTをみて、クエリをKILLするなんてことは、あったりなかったりします。 この時にクエリが数十個となると、手作業ではやりきれませんので、コマンドを駆使して対応することになります。 ちょっと前にやったのが以下のコマンド /usr/bin/mysql --defaults-extra-file=/path/to/.my-other.cnf -NB -e 'SELECT GROUP_CONCAT(ID) FROM \ information_schema.PROCESSLIST WHERE STATE = "Creating sort index" AND TIME > 1000 AND INFO \ LIKE "select%example%"' | grep -v NULL | /usr/b

                                                              MySQLのprocesslistをgrep して killする myps コマンド - Hateburo: kazeburo hatenablog
                                                            • grepを忘れただけなのに

                                                              今年も『本番環境でやらかしちゃった人のアドベントカレンダー』の季節がやってきましたね。 知見が多く、関心しながら拝見しています。 人は必ず何かしらミスを起こすもの。 明日は我が身と思いながら、業務をこなす日々です。 そんな私も業界に入って1年目に、本番環境の洗礼にあったことがございます。 当時は苦々しい思いをしましたが、その経験を供養するためにもここに残そうと思います。 発生当時の状況 事件当時、私はサーバのリプレイス案件にアサインしていました。 その業務の中で上司に日常的に運用されているスクリプトの調査を依頼されました。 私はまだ経験が浅かったため理解が合っているかは怪しいですが、関わっていたシステムは設計の段階で大分やっつけだったらしく、 格納場所が間違っているスクリプトやログが散見されました。 リプレイスを切っ掛けに整理をする予定だったと記憶しています。 入ったばかりのペーペーの私が

                                                                grepを忘れただけなのに
                                                              • 新世代grep 'ripgrep'

                                                                ripgrepが圧倒的に速い。こんなに速い理由は大きく2つ。 ripgrepは、検索する必要がなさそうなファイル(たとえば、隠しファイル、バイナリファイル)をデフォルトで無視するようになっている。上記計測に使ったディレクトリを確認したところ、20万ファイル中14万ファイルは無視されるものだった。つまり、ripgrepは実質20万-14万=6万ファイルだけを検索していたのに対し、従来のgrepでは全20万ファイルを律儀に検索していたことになる。 ripgrepは、シンプルに検索のアルゴリズムが優れている。隠しファイル等を無視せず検索するオプションを指定し、検索対象となるファイル数を同じ20万に揃えて計測してみたところ、それでもripgrepは22秒で検索が終わった。 もっと厳密なベンチマークは公式を参照のこと。 https://blog.burntsushi.net/ripgrep/ デフォ

                                                                  新世代grep 'ripgrep'
                                                                • Spring Bootの@Componentと@Beanの違い - grep Tips *

                                                                  まずは結論から SpringのDIコンテナに管理してもらいたいクラスが、自分で作成しているクラスなのか、それとも外部のライブラリ(サードパーティのライブラリ)のクラスなのかによって、@Componentを使うか@Beanを使うか変わる。 @Componentとは @Compnentは、Spring BootでWebのMVCアプリを作成するときに使用する@Controller, @Service, @Repositoryと同様に、SpringのDIコンテナに管理させて@AutowireなどでDIできるようにしたいクラスにつける。 @Controller等はMVCの文脈上で特化したクラスにつけられるのに対して、@Componentはそれら以外の特化していないクラス全般に付与するだけで、基本的には同じ。 @Beanとは @Beanも同様にSpringのDIコンテナに管理させたいものにつける点は同

                                                                    Spring Bootの@Componentと@Beanの違い - grep Tips *
                                                                  • PowerShell でも tail -f がしたいし grep もしたい - Qiita

                                                                    Linux では tail -f でファイルの更新を監視してリアルタイムに表示を更新させることができます。ログファイルの監視などを行う際にお世話になるお便利コマンドですが、PowerShell にはそもそも tail がありません。困った。

                                                                      PowerShell でも tail -f がしたいし grep もしたい - Qiita
                                                                    • ast-grepでReact 19に移行する

                                                                      はじめに こんにちは、ast-grepの作者ヘリントンです。 Reactバージョン19のリリースに伴い、新機能と改善が追加されました。 しかし、この新バージョンへのアップグレードには、ソースコードの一部を修正する必要があります。特に大規模なコードベースでは、このプロセスはかなり手間がかかり、繰り返し行う必要があります。 本記事では、ast-grepというツールの使用方法を説明します。このツールは、コードベース内でパターンを見つけて置き換えることを目的として設計されており、React 19への移行を容易にします。 以下の3つの主要なcodemodsに焦点を当てます。 <Context>をプロバイダとして使用する 暗黙のrefコールバックリターンを削除する refをpropsとして使用し、forwardRefを削除する 前提条件: ast-grepのセットアップ まず、ast-grepをセット

                                                                        ast-grepでReact 19に移行する
                                                                      • ゲームボーイのロゴのバグを調べると、任天堂の不正カセット対策に辿り着いた|jack_grep

                                                                        これはゲームボーイの起動時に、カセットがきれいに差さっていないとよく表示されるバグったロゴ。 ゲームボーイ世代の方にはお馴染みの現象です。 参考動画: https://www.youtube.com/watch?v=tc3vYosDTRo (こちらはソフトを差していないようで、ロゴが真っ黒になっています)私自身懐かしいなと思ったのですが、ふと疑問に思うことがありました。 なぜ、このようなバグったロゴを表示する機能があるのだろう? ゲームボーイより前に発売されたファミリーコンピューターでは、このような機能はなく、カセットが上手く差さっていないとゲームがそもそも起動しません。 上手く差さっていないことを遊ぶ人に伝えるだけであれば、わざわざバグったロゴを表示しなくとも、それが分かる表示をすれば済む話です。 前述のツイートのように、多種多様なバグったロゴは必要ないはずです。 「これは何か理由がある

                                                                          ゲームボーイのロゴのバグを調べると、任天堂の不正カセット対策に辿り着いた|jack_grep
                                                                        • 速習Linux – 文字列の置換・抽出・検索と正規表現【sed・awk・grep】|Yuu's Memo

                                                                          sedコマンド sed(Stream Editor)は、テキストストリームの編集に特化した強力なツールです。以下にsedコマンドの基本的な構文を示します。 オプション: sedコマンドの挙動を制御するための指定です。例えば、置換を行う場合には-eオプションを使用します。 スクリプト: 実行したいsedコマンドの操作を指定します。置換や削除、追加など、様々な編集操作が可能です。 ファイル名: 処理を行いたいテキストファイルのパスを指定します。省略した場合は標準入力から読み込みます。 以下でもう少し詳しく解説します。 コマンド どういう処理をしたいかをコマンドで指定します。 処理内容の出力、削除、文字列の追加、置換などの処理を行えるコマンドが用意されています。 コマンド説明

                                                                            速習Linux – 文字列の置換・抽出・検索と正規表現【sed・awk・grep】|Yuu's Memo
                                                                          • R. Shioya on Twitter: "Linux でコアごとの周波数を見る方法をぐぐったら cpuinfo を定期的に cat するという身も蓋もない方法がでてきて,でもこれが一番みやすかった $ watch -n1 "cat /proc/cpuinfo | grep… https://t.co/0EjxSxuwmw"

                                                                            Linux でコアごとの周波数を見る方法をぐぐったら cpuinfo を定期的に cat するという身も蓋もない方法がでてきて,でもこれが一番みやすかった $ watch -n1 "cat /proc/cpuinfo | grep… https://t.co/0EjxSxuwmw

                                                                              R. Shioya on Twitter: "Linux でコアごとの周波数を見る方法をぐぐったら cpuinfo を定期的に cat するという身も蓋もない方法がでてきて,でもこれが一番みやすかった $ watch -n1 "cat /proc/cpuinfo | grep… https://t.co/0EjxSxuwmw"
                                                                            • awkの正規表現でグループ化とキャプチャ、後方参照を行う - grep Tips *

                                                                              (正規表現)のように正規表現を()で括ると、マッチした値を参照できるようになる。捕捉グループ、capturing groupと呼ばれ、大体のプログラミング言語の正規表現ライブラリで対応している。 sedだと、\1, \2, ... という記法で後方参照できる。 Rubyだと、正規表現内では \1, \2, ... という記法で後方参照でき、マッチ処理が終わったあとであれば$1, $2, ... という特殊変数によって n 番目の括弧にマッチした文字列を参照できる。 Javaだと、String#replaceAllで置換するなど $1, $2, ... という記法で後方参照でき、Matcherでマッチ処理をする場合はマッチ処理が終わったあとにMatcher#group(int n)で n 番目の括弧にマッチした文字列を参照できる。 Awkでは以下のようにマッチした値を参照する。 awk 'm

                                                                                awkの正規表現でグループ化とキャプチャ、後方参照を行う - grep Tips *
                                                                              • sedやgrepの代替として使えるpurlを作りました

                                                                                作りました。 Go製です。 何で作ったのか、どういう機能があるのか簡単に紹介します。 これまでの課題 sedやgrepには以下の問題があります。 正規表現の記法がPerl互換ではなく、使いにくい sedはmacとLinuxで互換性がなく(BSDとGNUで互換性がない)、OS依存のコードになりやすい これまでその問題を避けるために私はPerlのワンライナーを利用してきました。Perlは正規表現が使いやすく、柔軟な指定もできます。OS依存にもなりにくいです。しかしPerlには以下の問題がありました。 最近のmacやLinuxにはデフォルトでinstallされていないので使いにくい 特にDockerのようなコンテナ環境は顕著 最近は利用例が減っているので敬遠されがち ワンライナー専用ツールではないのでオプション名がわかりにくい そこで以下のツールを求められていると思います。 Perl互換の使いや

                                                                                  sedやgrepの代替として使えるpurlを作りました
                                                                                • wc -lでは文末に改行がないファイルの行数を正しく数えられない - grep Tips *

                                                                                  最後に改行がある場合は以下の通り問題ない。 $ printf 'test\ntest\n' test test $ printf 'test\ntest\n' | wc -l 2 wc -lは改行の数を数えるため、最後に改行がないと本当の行数より1少ない数を返してしまう。 $ printf 'test\ntest' test test$ $ printf 'test\ntest' | wc -l 1 対策としては、grep -c ''で空文字に合致する行数を求めることで代用したり、awkのENDとNRを活用したり、sedの現在の行数を出力する=と最終行$を活用したりする方法がある。 $ printf 'test\ntest' | grep -c '' 2 $ printf 'test\ntest' | awk 'END{print NR}' 2 $ printf 'test\ntest'

                                                                                    wc -lでは文末に改行がないファイルの行数を正しく数えられない - grep Tips *