Как корень, введите в оболочке:
# cfdisk /dev/sdX #Where /dev/sdX is the device
это покажет Вам что-то вроде этого:
cfdisk (util-linux-ng 2.18)
Disk Drive: /dev/sdb
Size: 3926949888 bytes, 3926 MB
Heads: 255 Sectors per Track: 63 Cylinders: 477
Name Flags Part Type FS Type [Label] Size (MB)
sdb1 Primary vfat [ABDEL] 1998.75
sdb2 Boot Primary ext3 [linx] 1924.72
если устройство будет иметь свободное пространство, то его покажут.
Примечание: cfdisk на самом деле является на терминальном основанным редактором раздела.
Можно использовать:
ps h --ppid $$ | wc -l
для получения количества дочерних процессов из сценария удара (помнят, это включает PS). Таким образом, если Вы хотите иметь 1 000 процессов, Вы проверяете, чтобы видеть, возвращается ли это 1001. Если не разжигают их с:
cmd &
так, чтобы они работали как дети текущего сценария (и поэтому будьте включены в количество.) Можно затем спать некоторое время, затем проверить снова в цикл навсегда. Одна вещь иметь в виду состоит в том при порождении других процессов, необходимо будет изменить ps
управляйте для фильтрации процессов, которые Вы хотите.
Та первая команда является базовой частью загадки, это должно просто быть немного больше, пока у Вас нет своего сценария.
Я использовал бы pgrep|wc -l
или что-то как этот в простом сценарии оболочки. Ожидайте одна секунда (или меньше на Linux, если Вам нравится к) между каждым, сверяются sleep
.
Если бы Ваш сценарий умирает и просто ронял бы к оболочке, можно использовать сценарий обертки для каждого экземпляра:
while [ 1 == 1 ] ; do /path/to/script ; done
или Вы пишете некоторую обертку, которая разветвляет сценарии и использование wait/waitpid
поймать мертвые процессы.