Сабж вопроса такой: есть просто огромный список шеллов в формате txt. Нужно удалить дубли из него. Только проблема в том, что дубли могут быть такого вида: "shell1/put1/shell.php" "shell1/put7/shell.php" "shell1/put5/shell.php" "shell5/put3/shell.php" "shell5/put4/shell.php" "shell5/put10/shell.php" То есть в списке должно остаться только по одному домену с шеллом. И не должно остаться нескольких путей к шеллу на ОДНОМ домене. Как это реализовать? Кто-нибудь сталкивался?
Первое что пришло в голову для *nix: Code: $ cat asd.txt shell1/put1/shell.php shell1/put7/shell.php shell1/put5/shell.php shell5/put3/shell.php shell5/put4/shell.php shell5/put10/shell.php $ for x in $(cut -d/ -f1 asd.txt | sort -u); do grep -m1 "$x" asd.txt; done shell1/put1/shell.php shell5/put3/shell.php Также написать простейший скрипт и сделать это за один проход файла. Code: perl -pe '$host=(split /\//)[0]; if(exists($hosts{$host})){$_="";} $hosts{$host}=1;' asd.txt