воскресенье, 19 октября 2008 г.

bash и время, Хабровое :)

Недавно на Хабре натолкнулся на немного странную заметку. Собственно речь идёт о возможности в стандартном приглашении bash установить показ времени. Автор утверждает что подобная штука позволяет здорово улучшить контроль за использованием времени. Удивился, что в коментах очень много "спасиб" и прочих восторженных отзывов - я к подобному импрувменту отношусь с некоторым непониманием. К сожалению или к счастью на Хабре меня нет, и коментить я там соответственно не могу, поэтому несколько мыслей по поводу, здесь.

Когда-то я пробовал вставлять время в приглашение bash, но от подобного решения отказался практически сразу, вернувшись на стандартное user@host:directory. Во-первых, приглашение получается сильно длинным, а потому с одной стороны - сложно вычленить из него то что надо в текущий момент; с другой - остается меньше места для того чтобы собственно вводить команды. Вариант двухстрочного приглашения мне никогда не нравился - выглядит как-то коряво, и часто избыточно.

Во-вторых, важно понимать какое именно время показывается - это фактически время появления текущего приглашения bash: использовать его как источник точного времени нельзя - оно не меняется до тех пор пока ты не вызовешь новое приглашение, использовать его для какого-либо "трэкинга" потраченного на набор команд времени тоже не особо удобно, поскольку, при активном использовании терминала строки очень быстро исчезают с экрана.

В-третьих, часы в приглашении меня просто раздражают. Уж слишком рядом с "фокусом внимания" находится будильник, и каким-то слишком ненужным напоминанием он служит. Я не буду делать вещи быстрее, если буду видеть что время неумолимо подходит к концу, более того я буду больше нервничать, а стало быть - мысли будут отвлекаться от собственно задачи. А лучшая атмосфера для того чтобы что-то сделать что-то быстро и правильно - это как раз таки когда ничего не отвлекает.

Тем не менее, видеть часы в терминале - само по себе - не такая уж плохая идея, и иногда, например при рассматривании логов, или времени модификации файлов - может быть очень полезным знать время(которое на сервере может очень отличаться от локального). Поэтому в обоих конфигах screen'а которые я использую присутствуют часы: