Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: bash скрипт  (Прочитано 1499 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн zan46

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
bash скрипт
« : 21 Апреля 2015, 08:55:23 »
Всем доброго утра.
Подскажите как bash скриптом передать строчку в файл?
Есть каталог /etc/ping
В нем два файла error.txt и ping
В файл error.txt пишется лог
Содержимое файла ping
#!/bin/bash

HOSTA="192.168.1.1"
if ping -c 1 $HOSTA; then
echo $HOSTA OK
else
echo "NO PING" >> error.txt

Дело в том что в error.txt ни чего не передается

Оффлайн suslikk

  • Старожил
  • *
  • Сообщений: 2485
    • Просмотр профиля
Re: bash скрипт
« Ответ #1 : 21 Апреля 2015, 09:07:30 »
zan46, у вас права есть на запись?
Нарисуй свой город на openstreetmap.org

Оффлайн zan46

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Re: bash скрипт
« Ответ #2 : 21 Апреля 2015, 09:18:45 »
хмм , я не выставлял , как проверить ?

если в окне терминала выполнить echo "123" >> error.txt то запись в 123 в файл попадает
user@ubuntu:/etc/ping$ echo "123" >> error.txt

Можно сделать вывод что есть права есть

Оффлайн SvMidi

  • Активист
  • *
  • Сообщений: 815
    • Просмотр профиля
Re: bash скрипт
« Ответ #3 : 21 Апреля 2015, 09:22:09 »
Возможно тот, от чего имени запускается скрипт прав не имеет. И не мешало бы указать полный путь до error.txt
« Последнее редактирование: 21 Апреля 2015, 09:24:00 от SvMidi »
Я знаю только то, что ничего не знаю, остальные не знают и этого.

Оффлайн zan46

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Re: bash скрипт
« Ответ #4 : 21 Апреля 2015, 09:23:49 »
Как сделать так чтоб писалось от любого имени ?

Оффлайн SvMidi

  • Активист
  • *
  • Сообщений: 815
    • Просмотр профиля
Re: bash скрипт
« Ответ #5 : 21 Апреля 2015, 09:25:01 »
chmod 777 error.txt
Но подозреваю, что в error.txt пишется, только не в тот в который ты хочешь.
Я знаю только то, что ничего не знаю, остальные не знают и этого.

Оффлайн zan46

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Re: bash скрипт
« Ответ #6 : 21 Апреля 2015, 09:29:33 »
Как более правильно будет написать ?
echo "NO PING" >> etc/ping/error.txt


Оффлайн suslikk

  • Старожил
  • *
  • Сообщений: 2485
    • Просмотр профиля
Re: bash скрипт
« Ответ #7 : 21 Апреля 2015, 09:40:21 »
echo "NO PING" >> /etc/ping/error.txt
Нарисуй свой город на openstreetmap.org

Оффлайн БТР

  • Заслуженный пользователь
  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 6166
    • Просмотр профиля
Re: bash скрипт
« Ответ #8 : 21 Апреля 2015, 09:58:42 »
zan46, какая необходимость писать в /etc? запороть систему?

посмотри, как правильно формируется условие IF .. THEN, у тебя неправильная запись.

Оффлайн zan46

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Re: bash скрипт
« Ответ #9 : 21 Апреля 2015, 10:02:52 »
echo "NO PING" >> /etc/ping/error.txt   всеравно не пишет

в etc пишу по причине того что так удобней искать , все установлено там , зачем все разбрасывать по разным местам ?

да пардон не дописал один оператор , но он присутствует

#!/bin/bash

HOSTA="192.168.1.1"
if ping -c 1 $HOSTA; then
echo $HOSTA OK
else
echo "NO PING" >> error.txt
fi

Пользователь решил продолжить мысль 21 Апреля 2015, 11:30:24:
Вопрос снят . Работает . Может кому пригодитс , добавил время и дату когда пропал пинг

#!/bin/bash

HOSTA="192.168.1.1"
if ping -c 1 $HOSTA; then
echo
else
echo "[`date +%F--%H-%M`] $HOSTA FAILED!!!" >> error.txt
fi
« Последнее редактирование: 21 Апреля 2015, 11:30:24 от zan46 »

Оффлайн alsoijw

  • Старожил
  • *
  • Сообщений: 4062
  • Fedora 25 GNOME 3 amd64
    • Просмотр профиля
Re: bash скрипт
« Ответ #10 : 21 Апреля 2015, 13:51:33 »
zan46, скрипт от рута запускаешь?
Мало видеть нам начало - надо видеть и конец. Если видишь ты создание - значит где-то есть ТВОРЕЦ
Многие жалуются: геометрия в жизни не пригодилась. Ямб от хорея им приходится отличать ежедневно?

Оффлайн zan46

  • Автор темы
  • Новичок
  • *
  • Сообщений: 10
    • Просмотр профиля
Re: bash скрипт
« Ответ #11 : 21 Апреля 2015, 16:59:15 »
нет

Пользователь решил продолжить мысль 21 Апреля 2015, 17:03:33:
Теперь проблема как правильно  его добавить в крон

Я сделал так

*/1 * * * * /etc/ping/ping

т.е. запускать каждую минуту , в итоге не работает
« Последнее редактирование: 21 Апреля 2015, 17:03:33 от zan46 »

Оффлайн alsoijw

  • Старожил
  • *
  • Сообщений: 4062
  • Fedora 25 GNOME 3 amd64
    • Просмотр профиля
Re: bash скрипт
« Ответ #12 : 21 Апреля 2015, 17:24:36 »
zan46, так запускай от рута.
Мало видеть нам начало - надо видеть и конец. Если видишь ты создание - значит где-то есть ТВОРЕЦ
Многие жалуются: геометрия в жизни не пригодилась. Ямб от хорея им приходится отличать ежедневно?

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: bash скрипт
« Ответ #13 : 21 Апреля 2015, 17:55:10 »
cat /var/log/syslog | grep CRON | tail
Wars ~.o

Оффлайн SvMidi

  • Активист
  • *
  • Сообщений: 815
    • Просмотр профиля
Re: bash скрипт
« Ответ #14 : 22 Апреля 2015, 12:46:17 »
ясен пень не работает, он не знает где твой error.txt
Я знаю только то, что ничего не знаю, остальные не знают и этого.

 

Страница сгенерирована за 0.041 секунд. Запросов: 23.