Я новичок ie в BASH и мне было интересно, не могли бы вы указать мне правильное направление. У меня есть файл CSV со следующими именами полей, разделенными ","
no,name,score,city
Я пытаюсь разработать сценарий, который будет принимать 1 аргумент (в формате числительных c), поиск столбца "score"
в CSV-файл и извлечь записи больше, чем заданный аргумент.
Мне не разрешено использовать awk для достижения этой цели, вот мой черновой код. Я пробовал разные логи c и подходы с cut и grep, но не получил желаемых результатов, таких как ниже. Есть ли переключатель, который я могу использовать с grep, чтобы указать поле и применить условие?
cut -f1,2,3,4 -d, sample.csv | grep 108
Дополнительно - я подготовил приведенный ниже сценарий, но у меня возникли проблемы с синтаксисом, и мне было интересно, может ли кто-нибудь мне помочь или дать подсказку. Спасибо
отредактировано
#!/bin/bash
file="sample.csv"
arg="$1"
while IFS=',' read -r f1 f2 f3 f4
do
if [ "$f3" -gt "$arg" ]
then
echo "$f1,$f2,$f3,$f4"
else
echo "No score greater than "$arg""
fi
done < $file