ファイルから情報を抽出するには、awk スクリプトを使用する必要があります。11 個のフィールドを持つタイトル行があり、それを という配列に分割しましたtitleList
。
Student Number:Name:Lab1:Lab2:Lab3:Lab4:Lab5:Lab6:Exam1:Exam2:Final
適切な行を見つけた後、たとえば結果が次の場合、タイトルが続くフィールドを出力する必要があります。
92839342:Robert Bloomingdale:9:26:18:22:9:12:25:39:99
この方法で印刷する必要があります。
Student Number:92839342 Name:Robert Bloomingdale Lab1:9 Lab2:26 Lab3:18
Lab4:22 Lab5:9 Lab6:12 Exam1:25 Exam2:39 Final:99
私はそれを管理するために for ループを使用します:
for (i=0 ;i<=NF ;i++)
{
printf "%s %s %s %s",titleList[i],":",$i," "
}
2 つの問題がある結果を除いて、すべてが良さそうに見えます。1 つ目は各結果の間に余分なスペースがあり、2 つ目は検索された行の最後のフィールドが欠落していることです。
Student Number : 92839342 Name : Robert Bloomingdale Lab1 : 9 Lab2 : 26
Lab3:18 Lab4 : 22 Lab5 : 9 Lab6 : 12 Exam1 : 25 Exam2 : 39 Final
私は何をすべきか?\n
検索結果の最後に問題はありますか?