このタイプの行を含むいくつかの txt (*.log) ファイルがあります。
...
不一致 '9:132170673': f[G,T] = [0.32,0.68]
不一致 '9:132228706': f[C,T] = [0.27,0.73]
'9:132280822' の可能なストランド フリップ: f[C,G,T] = [0.16,0.00,0.84]
...
引用符の間の文字列 number:number を抽出しようとしています。コマンドラインから!
スクリプトで管理できますが、コマンドラインから行う方法を理解したいです。簡単な方法があるはずです!
たとえば、次のような明白な解決策を試しています。
perl -ne 'if (/Possible/ or /Mismatch/) {/'(\S+)'/ ;print "$1\n";}' *.log
perl -ne 'if (/Possible/ or /Mismatch/) {/\'(\S+)\'/ ;print "$1\n";}' *.log
どちらも UNIX から次の回答を得ます。
-bash: 予期しないトークン `(' 付近の構文エラー
-F オプションを使用して /'/ で分割しようとしたところ、同じエラーが発生しました。
コマンドライン内の ' をエスケープするにはどうすればよいですか?