choices 関数は、値のセットが知られていて列挙可能であるすべてのプロパティーの有効なプロパティー値の配列を返します。たとえば、次のスクリプトは、choices 関数を使用してシェアノード上のすべてのプールのリストを取得してから、すべてのプールを反復処理してプロジェクトのリストを作成し、使用可能な領域とともにシェアします。
fmt = '%-40s %-15s %-15s\n'; printf(fmt, 'SHARE', 'USED', 'AVAILABLE'); run('cd /'); run('shares'); pools = choices('pool'); for (p = 0; p < pools.length; p++) { set('pool', pools[p]); projects = list(); for (i = 0; i < projects.length; i++) { run('select ' + projects[i]); shares = list(); for (j = 0; j < shares.length; j++) { run('select ' + shares[j]); share = pools[p] + ':' + projects[i] + '/' + shares[j]; printf(fmt, share, get('space_data'), get('space_available')); run('cd ..'); } run('cd ..'); } }
SHARE USED AVAILABLE pond:projectA/fs1 31744 566196178944 pond:projectA/fs2 31744 566196178944 pond:projectB/lun1 21474836480 587670999040 puddle:deptA/share1 238475 467539219283 puddle:deptB/share1 129564 467539219283 puddle:deptB/share2 19283747 467539219283