ターミナルで.pkgをインストールしますか?


回答:


102

/ usr / sbin / installer

installerコマンドは、指定されたドメインまたはボリュームにMac OS Xインストーラーパッケージをインストールするために使用されます。installerコマンドは、-packageパラメーターで指定された呼び出しごとに単一のパッケージをインストールします(-pkgは同義語として受け入れられます)。単一パッケージまたはメタパッケージのいずれかです。メタパッケージの場合、デフォルトのインストールの一部であるパッケージは、パッケージのチェックツールによって失格とされない限りインストールされます。

man installer完全な機能についてはをご覧ください。しばしば

sudo installer -pkg /path/to/package.pkg -target /

必要なのはそれだけです。


1
-targetはデバイスであり、パスではないことに注意してください。そのため、ほとんどの場合は「/」のままにしてください。
AlexV

1
@AlexV color me confused- /パスであり、デバイスがその上にマウントされています。では、なぜデバイスを引数として必要とするオプションが受け入れられるの/でしょうか?
ムル

1
@muru-ドキュメントでは「デバイス」と呼んでいますが、実際にはターゲットを定義するための独自の構文を持っています(正確には「Unixデバイスノード」ではありません)。インストーラーのマンページによると、デバイスノード(予想どおり)、ディスク識別子(disk1s9など)、マウントポイント(したがって「/」)、ボリュームUUID、またはでリストされたインストールドメインのいずれかですinstaller -dominfo
sehrgut

3

.pkg現在のフォルダーからすべてのファイルをインストールします/Applications

for f in *.pkg ; 
    do sudo installer -verbose -pkg "$f" -target /
done

別の方法として、を使用してパッケージをホームフォルダーにインストールできます-target ~。インストーラーで/Users/<your_account>/Applications特定のパスが事前定義されていない限り、それらは最終的に終了します。

pkgインストーラーに含まれる内容と実行されるインストール前後のスクリプトを正確に確認する必要がある場合は、SuspiciousPackage(フリーウェア)をインストールし、.pkgファイルが選択されている間にFinderからクイックプレビューを使用できます。選択したファイルでFinderでスペースバーを押すことも機能するはずです。


4
これは必ずしもインストール先ではありません/Applications-パッケージによって異なります/usr/local。たとえば、macOSのPowerShellはにインストールされます。
-RichVel
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.