Как использовать grep -f и perl для замены встроенного файла, заменяя новые строки на ";X"

Для тех, кто просто хочет найти пропавшие репозитории:

yum list installed | awk '{print $3}' | sort | uniq

Это должно вернуть все репозитории, из которых у вас установлены пакеты.

0
14.04.2020, 20:43
2 ответа

Не так много опыта работы с Perl, извините.

for X in $(cat change_this_lines_only.txt)
do
  sed -i "/^${X},/s/\$/;X/" on_this_file.txt
done
1
19.03.2021, 02:29

Использование awk, но необходимо повторно -направить вывод в какой-либо другой файл:

Таким образом, мы можем избежать цикла for и команды cat

$ awk -F"," '
FNR==NR{ a[$1]=$1;next} (FNR==1){print $0;}((NR > 1) && (a[$1]==$1)){ print $0",X"}' change_these_lines_only.txt on_this_file.txt 
Instance,Session,SenderCompID,Type,SrcAddr,SrcPort,DstAddr,DstPort,Protocol,Client,MIC,curr
304,PBAR29,PBAR29,V,146.127.180.96/27,,162.69.138.157,40008,pillar,DESH,ARCX,USD,X
304,PBAR36,PBAR36,V,146.127.180.96/27,,162.69.142.4,40015,pillar,DESH,ARCX,USD,X
304,PBAR28,PBAR28,V,146.127.180.96/27,,162.69.142.109,40007,pillar,DESH,ARCX,USD,X
310,PBAR88,PBAR88,V,146.127.197.128/26,,162.69.142.207,40285,pillar,SQOL,ARCX,USD,X
304,PBAR31,PBAR31,V,146.127.180.96/27,,162.69.138.62,40010,pillar,DESH,ARCX,USD,X
1
19.03.2021, 02:29

Теги

Похожие вопросы