motofan logo
26 страниц V « < 14 15 16 17 18 > »         
> 

Написание скриптов #!/bin/sh for UNIX, Кто поможет?

VINRARUS
сообщение 17.6.2011, 17:56 Закрепленное сообщение!


Куратор темы

Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044

Рейтинг: 1211



Ура! В теме появилася шапочка. watsup.gif
В даной теме помогаем друг другу в написании шелл скриптов, и дружно решаем проблемы связанные с ними smile.gif

Вот мои рукописные мануалы для совсем новичков:
Основы. Синтаксис, кавычки, переменные, условные операторы
Розширенная инфа о if

Подробный мануал с примерами по ВСЕМ функциям SH
Портативная версия еще одного мануала
Книги в формате Djvu

Примеры работы с текстом через sed и мануал PRO и мануал NUB
Примеры работы с текстом через awk и мануал
Обрезка текста внутри переменных - чорт ногу сломит =] О логике шаблонов.

Где быстро найти инфу?
Тут вводите в строчку поиска манов любую утилиту, например echo, и 95% вероятности что получите инфу по всем функциям и ключам
Вот инфа по НЕКОТОРЫМ утилитам, также можна пользоваться поиском

ПС

1. Не во всех UNIX\LINUX системах можно сразу в терминале вводить команды утилит.
Например в MOTOMAGX часто перед командой утилиты нужно вводить "busybox" (например busybox free) хотя это и решено на некоторых модах.
А в некоторых выкидышах типа Android они и вовсе отсутствуют как и сам busybox, но есть возможность добавить его самому.

2. Не всегда утилиты поддерживают то что написано в манах к ним, иногда функционал меняется от версии к версии.

3. Также нужно знать что код от bash иногда может не работать корректно на shell (sh), хотя и очень редко.
Это из за того что древним программистам делать было нечего, когда не было еще интернета, и они понапридумывали кучу модификаций.
Хорошо хоть код под чистый shell подойдет ко всем им, из за чего он считается эталоном. smile.gif
А не bash как считают юные линуксойды.
[close]


Сообщение отредактировал VINRARUS - 12.12.2020, 21:32
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 12.10.2011, 14:07


Куратор темы

Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044

Рейтинг: 1211



Познакомился сегодня с зомби процесами в линуксе, вот подробнее о этом crazy.gif
http://cooper.ezlibrary.com/articles/2009/...cesses-in-linux

Сообщение отредактировал VINRARUS - 12.10.2011, 14:07
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 14.10.2011, 13:30


Куратор темы

Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044

Рейтинг: 1211



Вот сделал парсер для одной проги, может кому пригодится:
Код
wget http://www.anekdot.ru/rss/randomu.html -O /tmp/anecdot

sed -e '2!d' -e 's/.*<\/span><br \/><br \/>//' -e 's/<br \/><br \/><span.*//' -e 's/<br \/>/\n/g' /tmp/anecdot > /tmp/anuka


Сообщение отредактировал VINRARUS - 14.10.2011, 13:32
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
igoripp
сообщение 21.10.2011, 15:06


Самый дерзкий
******

Группа: Пользователи
Сообщений: 1 412
Регистрация: 27.3.2010
Из: Касимов, Муром
Пользователь №: 215 540
Модель телефона: sony ion
Прошивка: Разные

Рейтинг: 1335.5



VINRARUS,
Помоги мне плиз сделать одну фишку...
Требуется написать скрипт, суть которого такова: запускаю его, он должен проверить запущен ли процесс zIM_E8, если запущен, делаем (дейстсвие1), незапущен - (действие2).
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 21.10.2011, 15:19


Куратор темы

Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044

Рейтинг: 1211



Цитата(igoripp @ Сегодня, 18:06)
* запущен ли процесс zIM_E8


Код
if killall -0 zIM_E8
then
echo "da"
else
echo "net"
fi

Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
igoripp
сообщение 21.10.2011, 15:48


Самый дерзкий
******

Группа: Пользователи
Сообщений: 1 412
Регистрация: 27.3.2010
Из: Касимов, Муром
Пользователь №: 215 540
Модель телефона: sony ion
Прошивка: Разные

Рейтинг: 1335.5



VINRARUS,
спасибо, работает smile.gif Но только половина sad.gif Какой командой разворачивать свернутые приложения? Если таковой нету, то как узнать pid процесса в автоматическом режиме, что б его занести в переменную? А дальше через зтаскмамМини развернуть, уже знаю как smile.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 21.10.2011, 15:50


Куратор темы

Термоядерный
********

Группа: Пользователи
Сообщений: 3 496
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044

Рейтинг: 1211



Цитата(igoripp @ Сегодня, 18:48)
* Но только половина

как это?
Цитата(igoripp @ Сегодня, 18:48)
* как узнать pid процесса в автоматическом режиме,

MUMU=`pidof zIM_E8`
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
igoripp
сообщение 21.10.2011, 15:56


Самый дерзкий
******

Группа: Пользователи
Сообщений: 1 412
Регистрация: 27.3.2010
Из: Касимов, Муром
Пользователь №: 215 540
Модель телефона: sony ion
Прошивка: Разные

Рейтинг: 1335.5



Цитата
как это?

моя гипотеза о том, что свернутое приложение можно запустить коммандой ./zim_e8 оказалось не верным sad.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Diag
сообщение 22.10.2011, 11:04


Ветеран
*****

Группа: Пользователи
Сообщений: 315
Регистрация: 2.5.2008
Из: г. Краснодар
Пользователь №: 171 112
Модель телефона: Motorola ROKR™ EM 30
Прошивка: R6716_G_71.04.06R_C

Рейтинг: 164



Цитата
моя гипотеза о том, что свернутое приложение можно запустить коммандой ./zim_e8 оказалось не верным

zTaskManMini тебе в помощь smile.gif
Прошу прощения. Проглядел.

Сообщение отредактировал Diag - 22.10.2011, 11:08
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
igoripp
сообщение 22.10.2011, 12:39


Самый дерзкий
******

Группа: Пользователи
Сообщений: 1 412
Регистрация: 27.3.2010
Из: Касимов, Муром
Пользователь №: 215 540
Модель телефона: sony ion
Прошивка: Разные

Рейтинг: 1335.5



Diag,
VINRARUS,
Код
if killall -0 zIM_E8
then
echo"da"
else
echo"net"
fi

конструкция данного вида не работает. Если приложение не запущено, то она запускается, выполняя команды под else. Если же приложение запущено, то никакой реакции на действия под then, else нету sad.gif Есть ли другой способ? И почему команда pid=`pidof zim_e8` возвращает несколько значений pid (603 602 601), хотя настоящий 601?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Diag
сообщение 22.10.2011, 12:59


Ветеран
*****

Группа: Пользователи
Сообщений: 315
Регистрация: 2.5.2008
Из: г. Краснодар
Пользователь №: 171 112
Модель телефона: Motorola ROKR™ EM 30
Прошивка: R6716_G_71.04.06R_C

Рейтинг: 164



Цитата
И почему команда pid=`pidof zim_e8` возвращает несколько значений pid (603 602 601), хотя настоящий 601?

Разве под другими идентификаторами процесс не вызывается?

Проверил. Из 3-х идентификаторов только по одному смог вызвать процесс... Не знаю, что можно предложить, но можно "разбить" результат с несколькими значениями идентификатора процесса и вызывать его, перебирая все эти значения.

Сообщение отредактировал Diag - 22.10.2011, 13:06
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Написание скриптов #!/bin/sh for UNIX, Кто поможет? · Motorola на Linux OS · Forum
 

26 страниц V « < 14 15 16 17 18 > » 
Ответ в темуСоздание новой темы
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 28.4.2024, 8:10

Форум живёт: