Sed \ awk help нужна.

Тема в разделе "Десктопный Linux", создана пользователем Neow15ard, 14 фев 2011.

Модераторы: Цукер
  1. Neow15ard

    Neow15ard

    Регистр.:
    27 ноя 2008
    Сообщения:
    422
    Симпатии:
    188
    Помогите с шелл скриптом.
    Задача взять из текстового файла ip : port (забиты построчно, несколько строк) 2 случайных ИП с портом и в другом файле в строках
    HTML:
    
    parent 500 http IP PORT
    parent 500 http IP PORT
    
    
    произвести замену существующих ip и портов на новые.

    - Делаю random прокси(что б каждый час менялся). как на proxy.void.ru .

    Не допираю как составить.
     
  2. modelsonline

    modelsonline Постоялец

    Регистр.:
    18 окт 2010
    Сообщения:
    103
    Симпатии:
    9
    Замену строки в файле сделать нельзя никак, только через другой файл и кажется нельзя в одном пайпе.

    ip=$(cat $file |cut -d":" -t1)
    port=$(cat $file |cut -d":" -t2)

    sed не нужен. Такое лучше делать в базе.
     
  3. Neow15ard

    Neow15ard

    Регистр.:
    27 ноя 2008
    Сообщения:
    422
    Симпатии:
    188

    Вообщето по всем параметрам идеально подходит именно sed
    но так как надо выдрать данные из одного файла и вставить в другой то тут вероятно и awk
    И это решение
    HTML:
    sed -i 's/pppp/ttttt/' file
    подходит но нужна регулярка вместо pppp для замены (ssed) на ttttt и как это описать в awk что бы замену произвести.
     
  4. modelsonline

    modelsonline Постоялец

    Регистр.:
    18 окт 2010
    Сообщения:
    103
    Симпатии:
    9
    Еще раз, "вставить в другой" нельзя, нужно через временный файл делать.

    1. взять соксы как я сказал (только в цикле сделать, с рандомом или как там сообразиш)
    можно файл в массив кинуть например так
    socks=(`cat $socks`)
    и работать с ним, либо рандомно строку из файла прочитать
    2. сделать пайп:
    чтение из файла где нужно заменить | если (проверка строки на совпадение с ip с помощью grep) { тут твой sed } иначе {echo строка} >временный файл
    3. mv временный файл куда надо