Jump to content

Reeker

Forum Members
  • Posts

    2
  • Joined

  • Last visited

Posts posted by Reeker

  1. @DennoN Все оказалось куда примитивнее, community.lst отдает домены, а в коде func.sh - grep ищет айпи адрес, соответственно файл не обновлялся и отдавался закешированный. Если я верно понимаю эту строку

    grep -E '([0-9]{1,3}.){3}[0-9]{1,3}')

    С таким кривоватым grep работает ок:

    curl_funk() {
      for var in $@; do
        if [ $(echo "$var" | grep -cE '^(ht|f)t(p|ps)://') != 0 ]; then cur_url=$(echo "$cur_url $var"); else last=$var; fi
      done
      if [ "$(curl -sk $cur_url | grep -E '(([0-9]{1,3}.){3}[0-9]{1,3})|(([a-zA-Z\-_.]){1,20}\.[a-z]{1,5})')" ]; then curl -sk $cur_url | sort ; else cat $last; fi
    }

     

  2. Страдал месяц с тем, что многие сайты открывались через VPN
    Хотя указан был community.lst - размер bird4-base-vpn.list не изменялся даже при указании других источников
    Оказалось, что подтягиваются данные из /root/Bird4Static/lists/antifilter.list
    Возможно проблема в том, что при первоначальной установке выбрал дефолтный источник и оно закешировалось - но мне разбираться лень. Многократные переустановки/обновления через install.sh и update.sh не помогали.

    Починилось комментированием одной строки (67) в /root/Bird4Static/scripts/func.sh и принудительным curl'ом. Да, вероятно костыль - но это максимум на что я способен в линуксе)

     #CURL FUNCTION
    curl_funk() {
      for var in $@; do
        if [ $(echo "$var" | grep -cE '^(ht|f)t(p|ps)://') != 0 ]; then cur_url=$(echo "$cur_url $var"); else last=$var; fi
      done
      curl -sk $cur_url | sort
      #if [ "$(curl -sk $cur_url | grep -E '([0-9]{1,3}.){3}[0-9]{1,3}')" ]; then curl -sk $cur_url | sort ; else cat $last; fi
    }

    PS у меня обновление списков стоит раз в месяц - как отразится это на производительности при обновлении раз в час - не знаю.

    PS2 вернул обратно код - все еще работает корректно, вероятно, было бы достаточно удалить antifilter.list

×
×
  • Create New...