Döngünümün amacı bir dosyanın her satırının ilk basamağını basmaktır. Bu dosya şu:
256-56-8411 Bob 3.61 Junior CS
471-44-7458 Tim 3.45 Senior CE
326-56-4286 Rajesh 2.97 Freshman TE
548-66-1124 Eric 2.88 Sophomore EE
447-21-3599 John 2.51 Junior CS
911-41-1256 Rebecca 3.92 Senior CS
854-22-6372 Robin 2.45 Freshman TE
Ve betiği çalıştırdıktan sonraki çıktı:
This is a script that analyses student data from input file students.txt
----------------------------------------------------------------------
./student_script: line 8: 2
4
3
5
4
9
8: No such file or directory
7 is the number of students in the input file.
Ve son olarak, kod:
echo "This is a script that analyses student data from input file $1"
echo "----------------------------------------------------------------------"
studentCount=`wc -l < $1 `
tempFile=`cut -c1 $1`
while read n
do
echo "$n"
done < $tempFile
echo "$studentCount is the number of students in the input file."
Bunu düzelttikten sonra, ilk hanenin dört olup olmadığını kontrol etmek için while döngüsünü kullanmayı planlıyorum ve sonra kaç tane ID'nin (ilk sütun) 4 ile başlamadığını belirtiyorum.
Yaklaşımımdan sonra daha temiz bir çözüm öğrenmeyi umursamıyorum, ama bu bir sınıf için ve çok fazla şey öğrendiğimizi sanmıyorum. Yolculuğum boyunca awk ile çok benzer şeyler gördüm, ancak henüz awk öğrenemedik.
Ama evet, temelde döngüden istediğim tüm verileri aldım, ancak bu iki ekstra bit ekledi.