Простой BASH скрипт

Тема в разделе "Другие языки", создана пользователем Menro, 19 авг 2019.

  1. Menro

    Menro web, seo, email, hack

    Регистр.:
    27 янв 2008
    Сообщения:
    681
    Симпатии:
    129
    Всем привет.
    Уже час ломаю голову, не пойму что не так.
    Скачал приложение: https://github.com/RedHatHackers/cms-detector

    Там вот такай BASH скриптик:

    PHP:
    FILE=$1

    if [ ! -"CMS" ]; then
    mkdir CMS
    fi

    for SITE in `cat $FILE`
    do
    CMS=`php index.php "http://$SITE"| cut -d '>' -f 2 | cut -d '<' -f 1`

    if [ -
    "$CMS];
    then
    echo "http://$SITE>>CMS/unknown.lst
    else
    echo 
    "http://$SITE>>CMS/"$CMS.lst" </dev/null
    echo -"    > http://$SITE/  \x1B[31m [$CMS] \x1B[0m"
    fi
    done
    Всё вниманием на переменную CMS. У неё есть команда: php index.php "http://$SITE"| cut -d '>' -f 2 | cut -d '<' -f 1, которая отдаёт пустой результат всегда, хотя если выполнить просто в консоли php index.php "http://site.ru"| cut -d '>' -f 2 | cut -d '<' -f 1 результат есть.
    Переменная $SITE также содержит данные в правильном формате.

    Получается, что вот это CMS=`php index.php "http://$SITE"| cut -d '>' -f 2 | cut -d '<' -f 1` видимо отрабатывает не правильно. У меня ощущение, что не обрабатывается переменная $SITE. Возможно тут должен быть какой-то другой синтаксис.
     
  2. metsys

    metsys

    Регистр.:
    27 апр 2014
    Сообщения:
    540
    Симпатии:
    549
    задай полный путь к index.php
    или делай заход в папку с index.php, чтобы пхп его исполнил, в противном случае он не знает где index.php
     
  3. Menro

    Menro web, seo, email, hack

    Регистр.:
    27 янв 2008
    Сообщения:
    681
    Симпатии:
    129
    Не, index.php он получает корректно.
    Не пойму как, но начал давать ответ. Только не всем.
    Видимо проблема не только в BASH скрипте.
    Спасибо за помощь, буду ковыряться.