Чем проверить список шеллов на дубли?

Discussion in 'Болталка' started by FreEonE_CS, 24 Mar 2014.

  1. FreEonE_CS

    FreEonE_CS Banned

    Joined:
    14 Jan 2009
    Messages:
    0
    Likes Received:
    1
    Reputations:
    0
    Сабж вопроса такой: есть просто огромный список шеллов в формате 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"

    То есть в списке должно остаться только по одному домену с шеллом. И не должно остаться нескольких путей к шеллу на ОДНОМ домене.

    Как это реализовать? Кто-нибудь сталкивался?
     
  2. Rado

    Rado Elder - Старейшина

    Joined:
    30 May 2011
    Messages:
    281
    Likes Received:
    289
    Reputations:
    39
    хрумером
    крякнутую версию любую скачай там есть
    [​IMG]
     
    #2 Rado, 28 Mar 2014
    Last edited: 28 Mar 2014
  3. FreEonE_CS

    FreEonE_CS Banned

    Joined:
    14 Jan 2009
    Messages:
    0
    Likes Received:
    1
    Reputations:
    0
    Но ведь повторные только домены. Ссылки везде разные по факту. Он поймёт это?
     
  4. Ganz Euler

    Ganz Euler Member

    Joined:
    7 Oct 2013
    Messages:
    50
    Likes Received:
    13
    Reputations:
    10
    Первое что пришло в голову для *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
     
  5. Rado

    Rado Elder - Старейшина

    Joined:
    30 May 2011
    Messages:
    281
    Likes Received:
    289
    Reputations:
    39
    поймет