Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Первые два способа у меня не сработали, скорее всего из-за настроек терминала.Если у вас Ubuntu или что-то ещё, то PC-спикер отключён в ядре чёрным списком /etc/modprobe.d/blacklist.conf. Цитата, с которой я полностью согласен:
# ugly and loud noise, getting on everyone's nerves; this should be done by a
# nice pulseaudio bing (Ubuntu: #77010)
blacklist pcspkrecho -e '\a'select — это зверский башизм, не стоит его использовать. Если уж так хочется интерактива — то любой из вариантов dialog выглядит и работает на порядке адекватнее.echo "…" >> /var/log/syslogНе делайте так НИКОГДА. В файл /var/log/syslog уже пишет один процесс (сам syslogd), а когда в один файл пишут несколько процессов в файле образуется мешанина из записанных в него данных (одни частично перекрывают другие). Ибо нет у нас гарантии, что и syslogd и bash открывали этот файл с флагом O_APPEND. Хотите что-то записать в syslog — пишите в /dev/log (через socat) или через утилиту logger.
setleds -D +caps < /dev/tty7Врядли для этого нужен root. Скорее просто нужны права на запись в /dev/tty*. В некоторых дистрибутивах для этого достаточно добавить пользователя в группу tty, в других можно к примеру при загрузке системы изменить владельца или права доступа к всё равно неиспользуемому /dev/tty63, тогда даже в cron-скриптах можно будет beep-ать и мигать лампочками через >/dev/tty63.
Скрипт необходимо запускать с правами рута!
Взаимодействие bash-скриптов с пользователем. Часть 2