Использованиеsed
:
sed -i 's/^www\.//' file
Использованиеawk
:
awk '{gsub("^www\\.", "");print}' file
Не существует хорошего способа преобразовать zfs
человекочитаемые -числа в фактические байты. Читаемые человеком -числа округлены и поэтому неточны.
Если вам нужны точные числа, используйте параметр -p
(машинный анализ ), и вывод будет в байтах, которые вы можете анализировать и форматировать по своему усмотрению.
$ zfs list tank/var; zfs list -p tank/var
NAME USED AVAIL REFER MOUNTPOINT
tank/var 8.33G 387G 6.90G /var
NAME USED AVAIL REFER MOUNTPOINT
tank/var 8948584448 415137447936 7407120384 /var
Но синтаксический анализ zfs
удобочитаемого -вывода и преобразование в "точные" числа невозможен. Поскольку удобочитаемые числа указаны только для (скажем )трех значащих цифр, ваша «точная» экстраполяция также будет точной только до трех цифр.
TiB=$((2**40))
GiB=$((2**30))
# MINFREE=$((50*$TiB)) # 50 TiB
MINFREE=$((50*$GiB)) # 50 GiB
POOLFREE=$(zpool list -Hpo free "$POOLNAME") #Free in bytes
if [ "$POOLFREE" -lt "$MINFREE" ]; then
printf "alert\n"
else
printf "no alert -- %d bytes free >= %d byte minimum\n" "$POOLFREE" "$MINFREE"
fi
zpool list
может предоставить числа в байтах. например. перечисление трех пулов (15T, 29T и 416G )на моем основном сервере zfs.
Во-первых, без -H
и-p
:
$ zpool list -o name,size,alloc,free,capacity
NAME SIZE ALLOC FREE CAP
backup 14.5T 6.15T 8.40T 42%
export 29T 17.8T 11.2T 61%
ganesh 416G 169G 247G 40%
И снова с -H
и-p
$ zpool list -H -p -o name,size,alloc,free,capacity
backup 15994458210304 6763872280576 9230585929728 42
export 31885837205504 19592775573504 12293061632000 61
ganesh 446676598784 181604904960 265071693824 40
Вывод разделен табуляцией, поэтому его легко обрабатывать с помощью awk
или cut
или чего угодно, (даже оболочки во время цикла чтения, если вы настаиваете). Поле capacity
представляет собой используемый процент, поэтому оно особенно полезно, если вы хотите отправить предупреждение по электронной почте, если пул становится менее 10% или 20% свободным.
-H
этоScripted mode. Do not display headers, and separate fields by a single tab instead of arbitrary space.
-p
печатает «поддающийся анализу» формат, а не «читаемый человеком» формат (, т.е. байты)Кстати, в последних версиях ZFS справочные страницы zfs
и zpool
разделены на отдельные страницы для подчиненных -команд, свойств, концепций и т. д. Если это то, что вы используете, см. справочные страницы. для zpool-list
и zpoolprops
для более подробной информации. В противном случае просто man zpool
.