Ответы к упражнениям см. в приложении А.
Напишите программу, которая получает результат команды date и вычисляет текущий день недели. Если день недели — рабочий день, выводить get to work, в противном случае выводить go play.
Напишите программу, которая получает все реальнне имена пользователей из файла /etc/passwd, а затем трансформирует результат команды who, заменяя регистрационное имя (первая колонка) реальным именем. (Совет:
создайте хеш, где ключ — регистрационное имя, а значение — реальное имя.) Попробуйте вьшолнить эту задачу с использованием команды who как в обратных кавычках, так и открьггой как канал. Что легче?
Модифицируйте предыдущую программу так, чтобы ее результат автоматически поступал на принтер. (Если у вас нетдоступа к принтеру, то, вероятно, вы можете послать самому себе сообщение электронной почты.)
Предположим, функция mkdir перестала работать. Напишите подпрограмму, которая не использует mkdir, а вызывает /bin/mkdir c помощью функции system. (Убедитесь в том, что она работает с каталогами, в именах которых есть пробел.)
Расширьте программу из предыдущего упражнения так, чтобы в ней устанавливались права доступа (с помощью функции chmod).