Я пытаюсь распечатать всю строку, которая может содержать одно и то же слово дважды и болееПечатные линии с повторяющимися словами
E.g. с этим входным файлом:
cat dog cat
dog cat deer
apple peanut banana apple
car bus train plane
car train car train
Выход должен быть
cat dog cat
apple peanut banana apple
car train car train.
Я попробовал этот код и он работает, но я думаю, что должна быть более коротким путем.
awk '{ a=0;for(i=1;i<=NF;i++){for(j=i+1;j<=NF;j++){if($i==$j)a=1} } if(a==1) print $0}'
Позже я хочу найти все такие повторяющиеся слова и удалить все повторяющиеся записи, кроме 1-го вхождения.
Так вход:
cat dog cat lion cat
dog cat deer
apple peanut banana apple
car bus train plane
car train car train
Желаемый результат:
cat dog lion
dog cat deer
apple peanut banana
car bus train plane
car train
Я ищу регулярное выражение, что с этим не так? – Vicky
regex используются в других языках, а также perl и ruby, но я хочу придерживаться регулярного выражения в awk, sed и grep, поэтому я помещаю те теги. – Vicky
Удачи найти ответ в 'awk' с' regex' – Inian