segfaultコマンドは、テキストを含むファイルがあるディレクトリで実行する必要があります。 TheまたはGroupがなければ、seg-faultは発生しません。次のgrepコマンドsegfaultはなぜですか:grep -Pz "(。| n)*" *
答えて
バグがそれでありますので、なぜ、次のgrepコマンドは
をセグメンテーションフォールトありません。ユーザーのユーティリティで
どれクラッシュ、などgrep
、cp
、ls
、などが述べユーティリティでバグあり、そしてあなたはそれを再現するために必要な最小限の一連のステップでそれを報告する必要があります。
libpcre2
でコンパイルされた "git grep
"は時々segfaultをトリガーしました。
Git 2.16(2018年第1四半期)ではこれが修正されています。
commit a25b908,commit ce9a257(20111年11月23日)、Ævar Arnfjörð Bjarmason (avar
)を参照してください。 (commit b3f04e5にJunio C Hamano -- gitster
--によって合併2017年12月13日)
grep
:JIT(最も一般的なランタイム構成)の下PCRE2パターンのコンパイルのバグを修正し-P + PCRE2 <=10.30 + (*NO_JIT)
下セグメンテーション違反を修正します。
(*NO_JIT)
動詞を持つ任意のパターンは、任意の現在リリースされPCRE2バージョンで セグメンテーション違反になります。これはPCRE2自体のバグだったsegfaultedこと$ git grep -P '(*NO_JIT)hi.*there' Segmentation fault
は、
pcre-dev
上で(「How am I supposed to use PCRE2 JIT in the face of (*NO_JIT) ?」)を報告した後、それはまだで修正されていますリリース予定のPCRE(おそらく最初に10.31としてリリースされた)。
今ではで死ぬだろう:$ git grep -P '(*NO_JIT)hi.*there' fatal: pcre2_jit_match failed with error code -45: bad JIT option
しかし、バグの原因は、戻って私の 94da919(」
grep
:PCRE v2" のサポートの追加にまで遡る私たち自身のコードであり、2017年6月1日に、 Git 2.14-rc0)。としては、それはまた、
pcre2_pattern_info()
だけJITが 使用する必要があるかどうかを確認するためにpcre2_config()
をチェックするのに十分 ない頼まなければならないが、ここに追加されたコメントで、より長さで説明しました。これはPCRE2で回り込んだときに私が気付いたものです 動詞のパターンがgitに渡されました。 PCRE2の動詞 を(* NO_JIT) という相対的な不明瞭さと一緒にライブラリに渡すことのあいまいさを考えると、git のユーザーはこれを遭遇したとは思わない。まったく同じバグではないかもしれませんが、あなたはGitの2.16たらもう一度
再びgit grep
をテスト検討するかもしれない
は、問題が解決しないかどうかを確認するために、リリースです。
- 1. 最後のn行目のgrepコマンド
- 2. 、Linuxのgrepコマンドは
- 3. アレイ内のGrepコマンド
- 4. Grepコマンドin java
- 5. bash grepコマンド
- 6. Grepコマンドの問題
- 7. ループでgrepコマンドの出力
- 8. このgrepコマンドに出力がないのはなぜですか?
- 9. 次のsegfaultはなぜですか?
- 10. Emacs:コマンド "helm-grep-do-git-grep"の色の変更方法は?
- 11. bashのgrepまたはgrep elif grep?だから混乱した
- 12. grepとunixのcutコマンド?
- 13. Bash:コマンド出力からのgrepパターン
- 14. は別のgrepコマンドの出力にgrepの助けが必要です
- 15. Solarisのgrepコマンドを使用
- 16. Linux grepコマンドの混乱
- 17. 匿名パイプとgrepコマンド
- 18. grepコマンドの結果(netstat -apnなど)
- 19. linuxコマンドの相違点ps -ef | grep [W] DAとps -ef | grep WDA?
- 20. のgrep -lとgrep
- 21. grepコマンドでp4pythonを使用する
- 22. フィールドを含むGrepコマンド
- 23. grep countとsaveが異なるのはなぜですか?
- 24. grepコマンドがいくつかの行の間に " - "を出力するのはなぜですか?
- 25. grep項目が存在しないときにgrepコマンドに失敗する
- 26. のLinuxのgrepの-eコマンドmakefileで
- 27. grepオプション 'o'コマンドが動作しない
- 28. linux grepコマンドの使用方法は?
- 29. Grepコマンドでコメント行をスキップする
- 30. grep '
manページによれば、 'grep -P'は"高度に実験的 "なので、YMMVはあなた自身の責任において使用します。私は個人的には疫病のようにそれを避けるだろうが、著者からの明確な警告が与えられているが、私は他の人たちがそれを主張しているのを見る... –
期間や "行終止符を除くすべての文字列"私の前提は、文の終わりにある改行または改行にマッチしようとしているということです。あなたの正規表現の例では、ピリオドは基本的にすべてのものにマッチします。ピリオドとテキストをマッチさせるには、バックスラッシュでエスケープする必要があります。 – user3661841
あなたの_grep_は本当にウイルスです。 – sln