0

次の内容のファイルがあります。

# 23 hits found
A_246   sme-miR-752-3p  100.00  12  0   0   1   12  6   17  0.14    23.3
--
# 16 hits found
A_699   bmo-miR-3326    100.00  10  0   0   4   13  6   15  1.9     19.6

最初の行にある場合# 23 hits found は、2 行目の最初の列をタブのみで印刷する必要があります。

たとえば、このファイルでは次のようになります。

# 23 hits found A_246

次のコマンドを試しましたが、2 行目の最初の列を印刷する方法がよくわかりませんでした。

awk '/# 23 hits found/' microns_seq1 
4

3 に答える 3

0

この awk は動作するはずです:

awk '/^# [0-9]+ hits found$/{l=$0; getline; print l "\t" $1}' file
于 2013-07-30T19:00:04.440 に答える
0

awk コードでファイル (awk0) を作成します。

/# 23 件ヒットしました/ { got_cnt = $0
                    次}
got_cnt != "" { print got_cnt $1
                    got_cnt = ""}`

次に実行します。 awk -f awk0 microns_seq1

幸運を!

于 2013-07-30T18:57:16.023 に答える