<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Linux Forum &mdash; Скрипт проверки пользователя в сети]]></title>
		<link>https://linuxforum.ru/viewtopic.php?id=25322</link>
		<atom:link href="https://linuxforum.ru/extern.php?action=feed&amp;tid=25322&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Скрипт проверки пользователя в сети».]]></description>
		<lastBuildDate>Thu, 29 Nov 2012 21:35:49 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Скрипт проверки пользователя в сети]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=311776#p311776</link>
			<description><![CDATA[<p>Я не могу поверить глазам!!!!<br />Все работает!!!!!</p><p>Спасибо, это не просто помощь &quot;пожилому студенту&quot; - ты по новой показал как строить код.</p><p>Блин, ну почему препод не подсказал, что как в &quot;С&quot; проще делать все отступы, что бы нагляднее и ничего не потерять! Спасибо за науку!!!</p>]]></description>
			<author><![CDATA[null@example.com (varvar777)]]></author>
			<pubDate>Thu, 29 Nov 2012 21:35:49 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=311776#p311776</guid>
		</item>
		<item>
			<title><![CDATA[Re: Скрипт проверки пользователя в сети]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=311599#p311599</link>
			<description><![CDATA[<p>Вот. Всё ведь просто и понятно, когда отступы стоят.<br /></p><div class="codebox"><pre><code>#!/bin/bash
#
# My Script
#

my_time=10
deftime=5
good_msg=&quot;User &quot;$1&quot; login in this system&quot;

echo &quot;.......................................................&quot;
echo &quot;                 To check user online                  &quot;
echo &quot;.......................................................&quot;
echo

#Check input parameters
if [ &quot;$#&quot; -ne 1 ]
then
    echo &quot;Please, type only one name without spaces...&quot;
    exit
fi

#Main check
in_net=`who | grep  &quot;$1&quot; -c`
if [ &quot;$in_net&quot; -ne 0 ]
then
    echo &quot;$good_msg&quot;
else
    one_word=`echo &quot;$1&quot; | grep &quot; &quot; -c`
    if [ &quot;$one_word&quot; -ne 0 ]
    then
        echo &quot;Please, check the name and type correct...&quot;
    else
        sleep $my_time
        in_net=`who | grep  &quot;$1&quot; -c`
        if [ &quot;$in_net&quot; -ne 0 ]
        then
            echo &quot;$good_msg&quot;
        else
            sleep $deftime
            in_net=`who | grep  &quot;$1&quot; -c`
            if [ &quot;$in_net&quot; -ne 0 ]
            then
                echo &quot;$good_msg&quot;
            else
                echo &quot;User $1 do not logged in system&quot;
            fi
        fi
    fi
fi</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Vascom)]]></author>
			<pubDate>Thu, 29 Nov 2012 07:03:48 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=311599#p311599</guid>
		</item>
		<item>
			<title><![CDATA[Re: Скрипт проверки пользователя в сети]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=311547#p311547</link>
			<description><![CDATA[<p>Спасибо за ответы!! Ломаю голову второй день.<br />Задача немного усложнилась.<br /><strong>Vascom</strong> - спасибо за подсказку, но не все так просто... </p><p>1 - Система проверяет, пользователь в сети или нет.<br />- если в сети выдает надпись - &quot;в сети&quot; - конец программы</p><p>- если пользователь не найден, программа проверяет правильность написания, имя пользователя ОДНО слово. Если через пробел есть Буква или Цифра - система сообщает - Проверьте правильность написания имени - конец программы</p><p>- или если пользователь не найдет - то система ожидает (в моем случае сейчас в скрипте 10 сек) и выдает что &quot;Пользователь в течении 10 секунд не залогинился&quot; ожидает еще 5 сек и выдает - Пользователь такой то не в систаме. - конец программы</p><p>Все что надо. У меня сейчас такой скрипт.</p><p>#!/bin/sh<br />#<br /># My Script<br />#<br />clear<br />echo &quot;.......................................................&quot;<br />echo &quot;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;To check user in online&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&quot;<br />echo &quot;.......................................................&quot;<br />echo &quot; &quot;</p><p>my_time=10<br />deftime=5</p><p>#if [ &quot;$?&quot; -eq 0 ]</p><p>in_net=`who | grep&nbsp; &quot;$1&quot; -c`<br />if [ &quot;$in_net&quot; -ne 0 ]</p><p>then<br />&nbsp; &nbsp; echo &quot;\a\n User &quot;$1&quot; login in this system&quot;<br />&nbsp; &nbsp; else</p><p>if [ &quot;$2&quot; != q ] &amp;&amp; [ &quot;$2&quot; != [0-9] ]</p><p>&nbsp; &nbsp; echo &quot;Please, check the name and type correct...&quot;</p><p>then</p><p>who | grep -w &quot;$1&quot; </p><p>&nbsp; &nbsp; echo &quot;User $1 not logged in&nbsp; $my_time seconds&quot;<br />else</p><p>if [ &quot;$#&quot; -eq 3 ] &amp;&amp; [ &quot;$3&quot; = q ]<br />then<br />sleep &quot;$my_time&quot;<br />who | grep -w &quot;$1&quot;</p><p>else</p><p>if [ &quot;$2&quot; = q ]<br />then<br />who | grep -l &quot;$1&quot;<br />sleep $deftime</p><p>else<br />echo &quot;User $1 do not logged in system&quot;</p><p>exit 1<br />fi<br />fi<br />fi<br />fi</p><p><strong>Проверяю себя: - ОТЛИЧНО!</strong><br />.......................................................<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;To check user in online&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />.......................................................</p><p> User vladimir login in this system<br />vladimir@ubuntu:~$ </p><p><strong>Проверяю garry: - Пользователь не проходит валибность имени</strong><br />.......................................................<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;To check user in online&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />.......................................................<br /> Please, check the name and type correct...<br />User garry not logged in&nbsp; 10 seconds<br />vladimir@ubuntu:~$ </p><p>Хотя просто должно выдать пользователь:<br />- Пользователь в течении 10-ти сек в сеть не входил<br />- Пользователь не в сети.</p><p><strong>Проверяю garry 8 - garry k: </strong><br />.......................................................<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;To check user in online&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />.......................................................</p><p>Please, check the name and type correct...<br />User garry not logged in&nbsp; 10 seconds<br />vladimir@ubuntu:~$ </p><p>Тоже самое!!!!!</p><p>Голова кругом (((((((( помоги выправить код. Он по ходу нормально написан, только с ошибками, или недочетами с &quot;не довведенными&quot; командами....</p>]]></description>
			<author><![CDATA[null@example.com (varvar777)]]></author>
			<pubDate>Wed, 28 Nov 2012 23:17:37 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=311547#p311547</guid>
		</item>
		<item>
			<title><![CDATA[Re: Скрипт проверки пользователя в сети]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=311209#p311209</link>
			<description><![CDATA[<p>У тебя строка &quot;echo &quot;\a User $1 login in this system&quot;&quot; срабатывает всегда вне зависимости от результата работы предыдущей команды &quot;who | grep&nbsp; $1&quot;.<br />Сделай нечто вроде этого:<br /></p><div class="codebox"><pre><code>in_net=`who | grep  $1 -c`
if [ &quot;$in_net&quot; -ne 0 ]
then
    echo &quot;\a User $1 login in this system&quot;
else
    echo &quot;\a User $1 not login in this system&quot;
fi</code></pre></div><p>P.S. Расставь отступы для всех if/else, чтобы понятнее было.</p>]]></description>
			<author><![CDATA[null@example.com (Vascom)]]></author>
			<pubDate>Tue, 27 Nov 2012 05:34:50 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=311209#p311209</guid>
		</item>
		<item>
			<title><![CDATA[Re: Скрипт проверки пользователя в сети]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=311199#p311199</link>
			<description><![CDATA[<div class="quotebox"><cite>varvar777 пишет:</cite><blockquote><p>Скриншоты скачайте сами, делаю все в Линуксе, фалообменики не понимают формат (((((( .xcf</p></blockquote></div><p>Зато Gimp умеет сохранять файлы в том числе и в <em>jpeg</em> и <em>png</em>, да и делать скриншоты в нём как-то излишне брутально <img src="https://linuxforum.ru/img/smilies/bx.gif" alt="bx" /><br />P.S. А вывод скрипта (текст) можно и показать, как обычный текст.</p>]]></description>
			<author><![CDATA[null@example.com (Lupo Alberto)]]></author>
			<pubDate>Tue, 27 Nov 2012 04:22:59 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=311199#p311199</guid>
		</item>
		<item>
			<title><![CDATA[Скрипт проверки пользователя в сети]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=311178#p311178</link>
			<description><![CDATA[<p>Господа Линуксники, нужна ваша помощь!</p><p>Задача:<br />Написать скрипт, что бы при запуске мог проверить пользователь в &quot;сети&quot; (залогинился) или нет. <br />Если пользователь в сети, програмка издает БИП и выдает, что пользователь в сети. // конец скрипта<br />Если пользователь не в сети, скрипт выдает, что пользоваетль не в сети и ожидает еще одной проверки 60 секунд.<br />После 60-ти секунд снова проверяет и если не в сети выдает, что он (пользователь) не в сети и выдает надпись. Если в сети выдает тоже надпись. // конец скрипта.</p><p>Скрипт написал, что то то идет на перекосяк.</p><p>Выдаю скрипт:<br /></p><div class="codebox"><pre><code>#!/bin/sh
#
# My Script
#
clear
echo &quot;.......................................................&quot;
echo &quot;                 To check user in online               &quot;
echo &quot;.......................................................&quot;
echo &quot; &quot;

my_time=60
deftime=5

if [ $? -eq 0 ]

then
who | grep  $1
echo &quot;\a User $1 login in this system&quot;

else
if [ $# -eq 2 ] &amp;&amp; [ $2 != q ]

then
who | grep -w $1 
sleep $my_time

echo &quot;User $1 logged in frequency $my_time seconds&quot;
else

if [ $# -eq 3 ] &amp;&amp; [ $3 = q ]
then
sleep $my_time
who | grep -w $1

else

if [ $2 = q ]
then
who | grep -l $1
sleep $deftime

else
echo &quot;User $1 do not logged in system&quot;

exit 1
fi
fi
fi
fi</code></pre></div><p>Скриншоты скачайте сами, делаю все в Линуксе, фалообменики не понимают формат (((((( .xcf<br />1 - Задаю проверить себя, все отлично!<br /><a href="http://clip2net.com/s/2xOeV">http://clip2net.com/s/2xOeV</a></p><p>2 - Задаю проверить мифического человека:<br />Выдают что пользователь в СЕТИ! Но несколько в ином варианте.<br /><a href="http://clip2net.com/s/2xOeU">http://clip2net.com/s/2xOeU</a></p><p>Подправьте код, плиз!!<br />Благодарю за скорые и толковые правки.<br />.................................................................................................................<br />Админы, и модераторы - если тема не в том разделе - перенесите, я тут впервые.</p>]]></description>
			<author><![CDATA[null@example.com (varvar777)]]></author>
			<pubDate>Tue, 27 Nov 2012 00:06:20 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=311178#p311178</guid>
		</item>
	</channel>
</rss>
