This shows you the differences between two versions of the page.
Next revision | Previous revision Last revision Both sides next revision | ||
коды_завершения [2009/03/02 16:32] val created |
коды_завершения [2019/06/20 09:51] val [Переменная ? - код завершения последнего запущенного процесса] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Коды завершения ====== | ====== Коды завершения ====== | ||
+ | [[http://en.wikipedia.org/wiki/True_and_false]] | ||
+ | |||
+ | ===== Переменная ? - код завершения последнего запущенного процесса ===== | ||
+ | <code> | ||
+ | $ ls /bin | ||
+ | $ echo $? | ||
+ | |||
+ | $ ls /noexistfile | ||
+ | $ echo $? | ||
+ | |||
+ | # cat /root/ex1.sh | ||
+ | </code><code> | ||
+ | #!/bin/sh | ||
+ | |||
+ | test "$1" = "" && \ | ||
+ | { | ||
+ | echo usage: | ||
+ | echo /root/ex1.sh url | ||
+ | exit 1 | ||
+ | } | ||
+ | ... | ||
+ | </code> | ||
+ | ===== Управление процессами с использованием кода завершения ===== | ||
+ | |||
+ | Пример 1 | ||
+ | |||
+ | <code> | ||
+ | # crontab -l | ||
+ | </code><code> | ||
+ | 0 * * * * /bin/ping -c 4 val.bmstu.ru >/tmp/pingval 2>&1 || /usr/bin/mail -s 'p | ||
+ | ing val.bmstu.ru' userX@isp.un </tmp/pingval | ||
+ | </code> | ||
+ | |||
+ | Пример 2 | ||
+ | |||
+ | <code> | ||
+ | $ wget http://val.bmstu.ru/unix/virus.zip | ||
+ | |||
+ | $ f=/etc/passwd | ||
+ | $ ls $f >/dev/null 2>&1 && echo file $f exist || echo file $f not exist | ||
+ | |||
+ | $ f=virus.zip | ||
+ | $ clamdscan $f || rm $f | ||
+ | |||
+ | $ test -e $f && (clamdscan $f >/dev/null 2>&1 || rm -v $f) | ||
+ | |||
+ | $ clamdscan $f | grep FOUND >/dev/null 2>&1 && rm -v $f | ||
+ | </code> |