У меня есть главный список, master.csv
, который выглядит следующим образом:
line1
line2
bill, 1
sonia, 2
rhonda, 3
patty, 4
и список файлов, по которым я хочу отфильтровать:
bill
rhonda
Я хочучтобы сохранить заголовки master.txt
, поэтому я делаю head -n 2 master.csv >out.csv && grep -f roster.txt master.txt >>out.csv
и получаю:
line1
line2
bill, 1
rhonda, 3
Это здорово, но я должен делать это все время, поэтому я заключаю его в функцию:
filterSections(){
head -n 2 /dev/stdin && grep -f $1 /dev/stdin
}
Итак, теоретически я могу сделать filterSections roster.txt <master.csv >out.csv
, но получаю только:
line1
line2
В моих файлах большего размера, кажется, отсутствует только первая строка.Спасибо