Получить значение
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- ефрейтор
- Сообщения: 62
- Зарегистрирован: 2008-08-08 10:29:43
Получить значение
Нужно на bash с файла login.conf выдергнуть значение SERVER_ID=
Кто подскажет как оно делается?
Кто подскажет как оно делается?
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
- Alex Keda
- стреляли...
- Сообщения: 35456
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
-
- ефрейтор
- Сообщения: 62
- Зарегистрирован: 2008-08-08 10:29:43
Re: Получить значение
Да вот стандартный файл /etc/login.conf В нем есть строка:lissyara писал(а):пример файла
:setenv=MAIL=/var/mail/$,BLOCKSIZE=K,FTP_PASSIVE_MODE=YES,SERVER_ID=00001:\
И там есть как бы ее правильно обозвать переменная SERVER_ID=00001.
Нужно найти и вот ети циферки что бы использовать дальше в скрипте
- Alex Keda
- стреляли...
- Сообщения: 35456
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Re: Получить значение
awk может.
=========
вы хоть как-то пытались?
=========
вы хоть как-то пытались?
Убей их всех! Бог потом рассортирует...
-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: Получить значение
generik писал(а):Да вот стандартный файл /etc/login.conf В нем есть строка:
Код: Выделить всё
zg# cat 1.awk
#!/usr/bin/awk -f
{
if ( match($1, /^#/) ) next;
gsub(/^\s+/, "", $0);
if ( !$0 ) next;
a=a$0;
if (match($0, /\\$/) == 0)
{
gsub(/\\[\s\t]*/, "", a);
gsub(/:$/, "", a);
gsub(/::/, ":", a);
print a;
a="";
}
}
zg#
Код: Выделить всё
zg# ./1.awk /etc/login.conf
default:passwd_format=md5:copyright=/etc/COPYRIGHT:welcome=/etc/motd:setenv=MAIL=/var/mail/$,BLOCKSIZE=K,FTP_PASSIVE_MODE=YES:path=/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin ~/bin:nologin=/var/run/nologin:cputime=unlimited:datasize=unlimited:stacksize=unlimited:memorylocked=unlimited:memoryuse=unlimited:filesize=unlimited:coredumpsize=unlimited:openfiles=unlimited:maxproc=unlimited:sbsize=unlimited:vmemoryuse=unlimited:priority=0:ignoretime@:umask=022
tandard:tc=default
xuser:tc=default
taff:tc=default
daemon:tc=default
news:tc=default
dialer:tc=default
root:ignorenologin:tc=default
russian|Russian Users Accounts:charset=KOI8-R:lang=ru_RU.KOI8-R:tc=default
zg#
-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: Получить значение
без кода это только слова -))) чтобы это утверждать нужен код на авкlissyara писал(а):awk может.
- Alex Keda
- стреляли...
- Сообщения: 35456
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Re: Получить значение
человек не просил код.zg писал(а):без кода это только слова -))) чтобы это утверждать нужен код на авкlissyara писал(а):awk может.
он просил нужного направления.
код надо давать тока после того как просят именно его и пытаются хоть что-то сделать.
Убей их всех! Бог потом рассортирует...
-
- ефрейтор
- Сообщения: 62
- Зарегистрирован: 2008-08-08 10:29:43
Re: Получить значение
спасибо всем, буду пробовать и учится.
Если бы я обладал знаниями, я бы не читал подобные форумы и не задавл здесь вопросов.
Если бы я обладал знаниями, я бы не читал подобные форумы и не задавл здесь вопросов.
- Alex Keda
- стреляли...
- Сообщения: 35456
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
Re: Получить значение
я тоже задаю здесь вопросы.
и ничего...
и ничего...
Убей их всех! Бог потом рассортирует...
-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: Получить значение
lissyara писал(а):человек не просил код.
он просил нужного направления.
на вопрос как, должен быть ответ вот так -)))generik писал(а):Нужно на bash с файла login.conf выдергнуть значение SERVER_ID=
Кто подскажет как оно делается?
да и сам по себе ответ
предполагает последующий пример с решением, потому что в противном случае никто не доказал, что авк действительно это может . К примеру, с помощью седа я так и не смог реализовать, упёрся в перевод строки, да и авк мало подходит для такой обработки. По-хорошему тут нужен перл.lissyara писал(а):awk может.
-
- проходил мимо
Re: Получить значение
в метке default:generik писал(а):Да вот стандартный файл /etc/login.conf В нем есть строка:
:setenv=MAIL=/var/mail/$,BLOCKSIZE=K,FTP_PASSIVE_MODE=YES,SERVER_ID=00001:\
И там есть как бы ее правильно обозвать переменная SERVER_ID=00001.
Нужно найти и вот ети циферки что бы использовать дальше в скрипте
Код: Выделить всё
sed -n 's/\s*#.*//; /^\s*$/d; /default:/,/:.*:$/s/.*,SERVER_ID=\([[:digit:]]*\).*/\1/p' /etc/login.conf
Код: Выделить всё
sed -n 's/\s*#.*//; /^\s*$/d; s/.*,SERVER_ID=\([[:digit:]]*\).*/\1/p' /etc/login.conf
только зачем скриптом соскрибать значение переменной окружения из login.conf? не проще ли воспользоваться ей (переменной) напрямую?
вместо
Код: Выделить всё
#! /bin/sh
id=$(sed -n 's/\s*#.*//; /^\s*$/d; /default:/,/:.*:$/s/.*,SERVER_ID=\([[:digit:]]*\).*/\1/p' /etc/login.conf)
Код: Выделить всё
#! /bin/sh
id=$SERVER_ID
Код: Выделить всё
#! /bin/sh
id=${SERVER_ID:-$(sed -n 's/\s*#.*//; /^\s*$/d; /default:/,/:.*:$/s/.*,SERVER_ID=\([[:digit:]]*\).*/\1/p' /etc/login.conf)}
Код: Выделить всё
#! /bin/sh
id=${SERVER_ID:-$(sed '#n
s/\s*#.*//
/^\s*$/d
/default:/,/:.*:$/ {
s/.*,SERVER_ID=\([[:digit:]]*\).*/\1/p
}' /etc/login.conf
)}
-
- полковник
- Сообщения: 5845
- Зарегистрирован: 2007-12-07 13:51:33
- Откуда: Верх-Нейвинск
Re: Получить значение
если только в метке default, то можно и не геммороитьсяГость писал(а):в метке default:
Код: Выделить всё
zg# awk '/^default:/,/[^#]+:\s*$/' /etc/login.conf | grep -Eo 'umask=[0-9]+'
umask=022
zg#
-
- ефрейтор
- Сообщения: 62
- Зарегистрирован: 2008-08-08 10:29:43
Re: Получить значение
Огромное спасибо за помощь. Решение довольно не сложное как оказалось. Но моих скудных познаний не хватило что бы найти ответ самостоятельно.
Еще раз всем спасибо за помощь.
Еще раз всем спасибо за помощь.