LINUX.ORG.RU

Сообщения vladstv

 

Grep и регулярное выражение

Добрый день!

Нарвался на статьи на Хабре, по Башу(по местным комментам я понял уже, что материал не ахти, но всё же). Есть там вот такой пример, «как вытащить первого пользователя из выдачи команды who» и записать в переменную:

logged_on=$(who | grep -i -m 1 $1 | awk ‘{print $1}’)

Как я не пытался выполнить этот код, всё тщетно. Во время выполнения ругается Grep:

Usage: grep [OPTION]… PATTERN [FILE]…

Понимаю, что проблема в том, что Grep’ом хотят вытащить первый элемент в первой строке, но Grep не умеет в ‘$0/$1/$2’ и т.д.

Статья на Хабре - есть перевод другой статьи, оригинала. Там эту задачу решают по-другому:

logged=$(who | awk -v IGNORECASE=1 -v usr=$1 ‘{ if ($1==usr) { print $1 }exit }’)

но в моём случае всё тоже тщетно, в переменную ничего не записывается. Почему? Определить не смог. Пробовал немного изменить код:

logged=$(who | awk ‘{BEGIN IGNORECASE=1; usr=$1} { if ($1==usr) { print $1 }exit }’)

но результат по прежнему нулевой.

Саму задачу я уже решил, совсем по другому, через костыль, но всё же хочу правильно всё понять и разобраться. Как решать задачу верно? Может у меня какой-то не сильно умный GREP, который не умеет в регулярные выражения, если я не спутал понятия конечно?

Update:

Прошу меня простить, на абзац ниже, написано, что скрипт будет вызываться с параметром(например, интересующий нас пользователь), который попадает в $1 и всё сразу работает. Не доглядел. Извините!

 , ,

vladstv
()

Samba 3.6

Комп отображается в сети подобным образом: «Samba 3.6 xxxxxxxx-куча разных цифр версии(netbios_name)». Вопрос: как убрать лишнее и оставить только нетбиос, как раньше?

 

vladstv
()

Systemctl

Проблема: после перезапуска не стартует wifi-модуль(PCI). Временное решение: из Yasta после редактирования(ничего не меняю,просто необходимо почему-то выполнить эту процедуру), включается и получает адрес, и инет пошел.

Но увы и ах, не устраивает, меня такое решение проблемы, начал копать: обратился к systemctl, выяснил имя девайса, попробовал start|stop|status|show - старт и стоп не производят никаких действий. Почему, непонятно было до тех пор пока не сделал вывод: «show». Вывелась таблица параметров устройства, среди которых есть такие как: «CanStart=no» «CanStop=no» и т.д. Насколько я понял запрещено, в принципе, выполнение подобных операций? Вопрос: как их изменить, и где они хранятся? в выводе «show» есть строчка «SysFSPath=...»-путь в каталог, но никакого конфигурационного файла я не нашел. Проблему хочу решить путем создания скрипта, который будет запускать wifi. изменение разнообразных настроек из yasta по поводу «запуска вместе с системой» не помогли.

P.S. или есть менее костыльный способ запускать wifi в автомате?

Спасибо!

 , , ,

vladstv
()

Squid+Samba

словил затык на моменте авторизации по ip всё ходит туда сюда работает, всё хорошо, а вот авторизацию пользователей AD(Windows Server 2003) не получается подвязать! уже измучился!

застрял вот на этой строчке, ввожу в консоле: «echo user domain_group | /usr/sbin/wbinfo_group.pl» вывод: «Failed to call wbcgetgroups: WBC_ERR_DOMAIN_NOT_FOUND Could not get groups for user domain_user ERR»

в чем проблема, есть информация, весь рунет облазил... samba 3.6 squid 2.7

Спасибо!

 , ,

vladstv
()

RSS подписка на новые темы