間隔が一定でないテキストファイルからテーブルデータを抽出する

間隔が一定でないテキストファイルからテーブルデータを抽出する
         CLASS RECORD OF THE STUDENT FROM THE PREVIOUS BATCH WHO TOPPED
Name (Roll no) #    Location   Section     Rank (MARKS)     Gender   
Anna (+)            USA        A1          First (100)      Female
(04)                California V
ADDITIONAL RECORDS OF THE STUDENTS FROM THE PREVIOUS BATCH NEXT IN LIST
Name (Roll no) #    Location   Section     Rank (MARKS)     Gender
Bob (-)             USA        A2          First (99)       Male
(07)                Florida    VI
Eva (+)             USA        A4          Second (96)      Female
(12)                Ohio       V           English (99)
                                           Maths(100)
Other records are not available currently.Some records may be present which can be given on request.

PDFからテキストファイルを取得するには、次のコマンドを使用します。PDFをテキストとして。以下で使用してくださいAWKコマンドで上記のデータを取得しています。
テーブルデータの間隔が等しくない。次の行を削除してください。全体的ににあります首都

pdftotext -layout INPUTFILE.pdf INPUTFILE.txt
awk '/RESULTS/{flag=1;next}/OTHER DATA/{flag=0}flag' INPUTFILE.txt | column -ts $'\t' -n


タブ区切り形式でテーブルデータを取得する方法(次の形式)?
一般的な方法でエンコードされているため、他の種類のテーブルでも機能します。

Name (Roll no) #    Location    Section     Rank (MARKS)    Gender  
Anna (+)            USA         A1          First (100)     Female
(04)                California  V
Bob (-)             USA         A2          First (99)      Male
(07)                Florida     VI
Eva (+)             USA         A4          Second (96)     Female
(12)                Ohio        V           English (99)
                                            Maths (100)

ベストアンサー1

これがあなたが探しているものかどうか教えてください。

$ awk '{if ($1 in a) next; a[$1]=$0; print}' <filePath> | grep -v  -e STUDENT  -e Other | column -ts $'\t' 
Name (Roll no) #    Location   Section     Rank (MARKS)     Gender   
Anna (+)            USA        A1          First (100)      Female
(04)                California V
Bob (-)             USA        A2          First (99)       Male
(07)                Florida    VI
Eva (+)             USA        A4          Second (96)      Female
(12)                Ohio       V           English (99)
                                           Maths(100)

おすすめ記事