Go to main content
Oracle® ZFS Storage Appliance 管理ガイド、Release OS8.7.0

印刷ビューの終了

更新: 2017 年 3 月
 
 

choices 関数の使用

choices 関数は、値のセットが知られていて列挙可能であるすべてのプロパティーの有効なプロパティー値の配列を返します。たとえば、次のスクリプトは、choices 関数を使用してシェアノード上のすべてのプールのリストを取得してから、すべてのプールを反復処理してプロジェクトのリストを作成し、使用可能な領域とともにシェアします。

  1. たとえば、次のスクリプトは、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 ..');
            }
    }
  2. これは、スクリプトを実行した出力です。
    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