以下に「n」個の列を持つfile.txtがあります。ループでコマンドを実行する必要があり、最初の列値と2番目の列値が必要です。完了したら、コマンドを実行して最初と3番目の列の値を取得し、行のすべての列を処理し続けます。
例:
vcloud <ktrcigmv> diskcommand <persistent-disk-1>
vcloud <ktrcigmv> diskcommand <persistent-disk-2>
vlcoud <ktrcsnu1> diskcommand <persistent-disk-1>
vlcoud <ktrcsnu1> diskcommand <persistent-disk-4>
vlcoud <ktrcsnu1> diskcommand <persistent-disk-6>
入力する(?):
ktrcigmv persistent-disk-1 persistent-disk-2
ktrcsnu1 persistent-disk-1 persistent-disk-4 persistent-disk-6
ktrsapahn vol-71412041887658--dev-sdd-cc04ce65
ktrai2y5h persistent-disk-1
ktrcibiy persistent-disk-1
ktrcigf2 persistent-disk-1
ktrcisxh persistent-disk-1
ktrsapmam vol-345052022286--dev-sdb-b5d5bdfd vol-345052022286--dev-sdf-9c91de4d
ktrcie8x persistent-disk-1
ktrcio3s persistent-disk-1
ベストアンサー1
使用perl
モードawk
:
<file.txt perl -lae '
system "vcloud", $F[0], "diskcommand", $_ for @F[1..$#F]'
vcloud field-1 diskcommand field-n
それぞれ実行されますフィールド2..ゲームの最後(配列インデックスは1から1ではなく0から始まるため、perl
各行1..$#F
に1つずつあります。)
フィールド区切り文字は、すべてのASCIIスペースシーケンス(スペース、タブ、垂直タブ、フォームフィード、キャリッジリターン)です。各行の先頭と末尾のスペースは無視されます。