CLI から出力を任意に抽出するにはどうすればよいですか?
私の具体的な例では (ただし、答えは全体に一般的に適用されるはずです)、標準の Ubuntu サーバー OS (12.04) を使用して AWS EC2/EBS の上に NodeJS/MongoDB テクノロジ スタック用の汎用デプロイ/スケール スクリプトを作成しようとしています。 . 今のところ、AWS ダッシュボード コンソールを介して手動で EBS ドライブを作成して接続していますが、他のすべては自動的に行われるはずです。
最初に、lsblk -l
マウントする EBS ドライブであるすべてのブロックのリストを取得する必要があります。次に、(初めての条件で) MDADM と LVM をセットアップする必要がありますが、それらのコマンドは、次のようなブロックの名前を知っていることを前提としています。
sudo mdadm --create --verbose /dev/md0 --level=10 --chunk=256 --raid-devices=4 /dev/sdb1 /dev/sdb2 /dev/sdb3 /dev/sdb4
等々。これは素晴らしく簡単です...もし私がlsblkからのCLI出力を読んでいる人間なら。しかし、それを動的に解析/抽出して反復するにはどうすればよいでしょうか? どういうわけか私はこれを行う必要があります(疑似コード):
$EBS_ARRAY = lsblk -l -list_the_names_of_blocks_not_mounted
sudo mdadm --create --verbose /dev/md0 --level=10 --chunk=256 --raid-devices=EBS_ARRAY.length EBS_ARRAY.join(' ')
...rest of my script here...
JSON を使用せず、非対話的に (スクリプト化された) CLI で動的に作業する方法について、私が無知な JavaScript の男であることは明らかです。それで...一体どのようにして、自動化された方法でCLI出力から情報を変数に任意に抽出しますか?
ありがとう。