Я понимаю, что эта ветка довольно старая, но, тем не менее, очень уместная в любой установке сегодня и в будущем. В то время как все они предлагали отличные варианты для отслеживания дисковых свиней, мое внимание привлекло ваше утверждение: «... Я часто сталкиваюсь с трудностями...». Похоже, вам приходится часто бороться с этим симптомом. Я бы сделал шаг назад и посмотрел, как вы можете предотвратить это. Мера предосторожности будет состоять из двух этапов:
Например, когда FS достигает 90%,вы можете настроить оповещение по электронной почте, чтобы информировать пользователей об этой ситуации. Или вы можете написать себе об этом по электронной почте. Задание cron может проверять состояние с интервалом в 5 -минут.
Затем, когда он достигает, скажем, 98%, вы можете запустить сценарий, чтобы установить FS только для чтения. Это не сильно повредит, так как скоро все пройдет. Но преимущество установки FS ro до 100% состоит в том, что пользователь (с )может удалять файлы при восстановлении записи. При этом в некоторых старых версиях Solaris есть ошибка, которая приводит к сбою системы в случае, если FS достигает 100%, но мы оставим это на другой день.
Вы можете использовать вспомогательную переменную для создания имени целевой переменной, а затем использовать косвенное обращение к переменной:
zmx_var=zmx_$1
echo -e "${!zmx_var} $tag $1${zmx_no_color}: $line"
В bash версии 4.4 (я думаю )и выше вы можете использовать "nameref"
$ foo_bar=hello
$ set -- bar
$ declare -n "var=foo_$1"
$ echo "$var"
hello