The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Добавление IP адресов и имен в переменную из файла, !*! Saamuel, 26-Дек-17, 12:36  [смотреть все]
Здравствуйте,

Необходимо написать скрипт который бы добавлял параметры в переменные из файла.
Скрипт добавляет ДНС записи в яндекс.

#!/bin/bash

NAME="100"
DOMAIN="domain.ru"

ip1="192"
ip2="168"
ip3="1"
ip4="224"

let "ipM = $ip4 + 1"
let "ipC = $ip4 + 2"

M=`echo $ip1.$ip2.$ip3.$ipM`
NAME_M="$NAME"mk

C=`echo $ip1.$ip2.$ip3.$ipC`
NAME_C="$NAME"cs

curl -H "PddToken: 00000000000000000000000" -d "domain=$DOMAIN&type=A&subdomain=$NAME_M&ttl=14400&content=$M" "https://pddimp.yandex.ru/api2/admin/dns/add"
curl -H "PddToken: 00000000000000000000000" -d "domain=$DOMAIN&type=A&subdomain=$NAME_C&ttl=14400&content=$C" "https://pddimp.yandex.ru/api2/admin/dns/add"

В таком виде скрипт отрабатывает нормально для одного филиала. Но проблема в том что таких филиалов более 500.

Помогите доработать скрипт чтоб подставлялись значения для переменных NAME и IP из файла.

Содержимое файла NAME:
100;192.168.0.1/24
101;192.168.1.1/24
102;192.168.2.1/24
103;192.168.3.1/24
104;192.168.4.1/24

  • Добавление IP адресов и имен в переменную из файла, !*! Andrey Mitrofanov, 13:52 , 26-Дек-17 (1)
    > M=`echo $ip1.$ip2.$ip3.$ipM`
    > C=`echo $ip1.$ip2.$ip3.$ipC`

    Глаз режет. :/

    M="$ip1.$ip2.$ip3.$ipM"
    C="$ip1.$ip2.$ip3.$ipC"

    "$ip1.$ip2.$ip3" можно в какой ни то PFX= положить.


    > Помогите доработать скрипт чтоб подставлялись значения для переменных NAME и IP из
    > файла.
    > Содержимое файла NAME:
    > 100;192.168.0.1/24
    > 101;192.168.1.1/24
    > 102;192.168.2.1/24
    > 103;192.168.3.1/24
    > 104;192.168.4.1/24

    while IFS=. read ip1 ip2 ip3 drop_anything_else; do
       [ "$drop_anything_else" ] || continue
       ip4=224

       ...

    done <./FILE

    • Добавление IP адресов и имен в переменную из файла, !*! Saamuel, 14:45 , 26-Дек-17 (2) –2
      >[оверквотинг удален]
      >> 100;192.168.0.1/24
      >> 101;192.168.1.1/24
      >> 102;192.168.2.1/24
      >> 103;192.168.3.1/24
      >> 104;192.168.4.1/24
      > while IFS=. read ip1 ip2 ip3 drop_anything_else; do
      >    [ "$drop_anything_else" ] || continue
      >    ip4=224
      >    ...
      > done <./FILE

      Спасибо за ваш ответ, а не могли бы вы привести пример скрипта полностью, в программировании вообще не силен.


      • Добавление IP адресов и имен в переменную из файла, !*! ыы, 22:07 , 26-Дек-17 (3)
        >[оверквотинг удален]
        >>> 102;192.168.2.1/24
        >>> 103;192.168.3.1/24
        >>> 104;192.168.4.1/24
        >> while IFS=. read ip1 ip2 ip3 drop_anything_else; do
        >>    [ "$drop_anything_else" ] || continue
        >>    ip4=224
        >>    ...
        >> done <./FILE
        > Спасибо за ваш ответ, а не могли бы вы привести пример скрипта
        > полностью, в программировании вообще не силен.

        Люди обычно, если понимают что не сильны в некой предметной области - либо не берутся за работу требующую специальных знаний, либо обращаются к высококвалифицированным специалистам, рабочее время которых - обычно дорого...

        • Добавление IP адресов и имен в переменную из файла, !*! Аноним, 01:25 , 30-Дек-17 (5)
          >[оверквотинг удален]
          >>> while IFS=. read ip1 ip2 ip3 drop_anything_else; do
          >>>    [ "$drop_anything_else" ] || continue
          >>>    ip4=224
          >>>    ...
          >>> done <./FILE
          >> Спасибо за ваш ответ, а не могли бы вы привести пример скрипта
          >> полностью, в программировании вообще не силен.
          > Люди обычно, если понимают что не сильны в некой предметной области -
          > либо не берутся за работу требующую специальных знаний, либо обращаются к
          > высококвалифицированным специалистам, рабочее время которых - обычно дорого...

          Люди, время которых обычно дорого, не умничают на форумах.

      • Добавление IP адресов и имен в переменную из файла, !*! Led, 00:19 , 30-Дек-17 (4)
        > в программировании вообще не силен.

        Берись за метлу.

        Или думаешь, что станешь "силён" как только получишь "тройку" в зачётку?

  • Добавление IP адресов и имен в переменную из файла, !*! Аноним, 22:56 , 18-Мрт-18 (6)
    > Содержимое файла NAME:
    > 100;192.168.0.1/24
    > 101;192.168.1.1/24
    > 102;192.168.2.1/24
    > 103;192.168.3.1/24
    > 104;192.168.4.1/24

    while IFS= read L; do
        NAME=${L%;*}
        IP4=${L##*.}
        IP4=${IP4%/*}
        IP1=${L#*;}
        IP1=${IP1%.*}
        echo "${NAME}mk ${NAME}cs ${IP1}.$((IP4 + 1)) ${IP1}.$((IP4 + 2))"
    done < ./NAME




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру