私はこれをオンラインで持っています:
diskutil mount VOL1 && diskutil mount VOL2 && diskutil mount VOL3
しかし、インライン配列を使用して "diskutil mount"コマンドを繰り返すことはしたくありません。私は次のスタイルで解決策を見つけようとしています。diskutil mount {VOL1,VOL2,VOL3}
それでは、xargsはどのように書かれますか?
答え1
~によるとdiskutil
マニュアルページ、このmount
コマンドは単一ボリュームをマウントするように明示的に設計されています(強調表示)。
[読み取り専用] [-mountPoint パス] デバイスのマウント
シングルボリュームマウント。 readOnlyを指定すると、ボリューム上のデフォルトのファイルシステムおよび/またはデバイスおよび/またはメディアが書き込みをサポートしていても、ファイルシステムは読み取り専用でマウントされます。これは mount(8) の rdonly と一致します。オプションは同じです。 -mountPointが指定されている場合、このパス(/ Volumes / VolumeNameへの完全修飾パスではない)がボリュームファイルの内容の表示として使用されます。このパスのディレクトリはすでに存在している必要があります。
これはdiskutil mount {VOL1,VOL2,Vol3}
、拡張された単純な操作を実行できないことを意味しますdiskutil mount VOL1 VOL2 Vol3
。ただし、実際にxargs
提案したとおりに実行できます。
printf '%s\n' {VOL1,VOL2,VOL3} | xargs -I{} diskutil mount {}
または、単純なループを使用してください。
for i in {VOL1,VOL2,VOL3}; do diskutil mount "$i"; done