とりあえず記録として自分のブログにも転載しておく
なんでそんなことしようと思ったのか
自分の家でMacを熟知しているのが自分以外いないのでソフトウェアアップデートしてくれとかいうと
「全然わかんないからやって」と言われるのでなるべくコマンドを使って一発更新出来るようにしたいなと思いました。
検証した環境
対象のMac:MacbookAir (mid 2013) OS:MacOS 10.13.3(High Sierra)
やり方
下準備としてMacをローカルネットワークでssh出来るようにRemoteLoginをオンにしておく
自分のターミナルからsshでログインします。
入れるアドレスは、このコンピュータにログインするには”hoge@hoge"と入力してくださいという欄を入力
OSのアップデートなどはAdministerの権限がないと行けないのでsudoが使えるアカウントで実施してください。
$ssh User@HostName.local
ログインが出来たらsoftwareupdarteコマンドでAppStoreでインストールができるリストを確認
$ softwareupdate --list
今回の場合はOSのアップデート情報と、iTunesが出ました。
出力例
$ softwareupdate --list
Software Update Tool
Finding available software
Software Update found the following new or updated software:
* macOS High Sierra 10.13.3 Update-
macOS High Sierra 10.13.3 Update ( ), 1925876K [recommended] [restart]
* iTunesXPatch-12.7.3
iTunes (12.7.3), 180272K [recommended]
特定のインストールを行いたい場合は*が付いている箇所をコピーして実行します。
例:iTunesをインストールする場合
$ softwareupdate -i iTunesXPatch-12.7.3
Software Update Tool
Downloading iTunes
Downloaded iTunes
Installing iTunes
Done with iTunes
Done.
また一括でインストールを実施したい場合は -iaオプションで実行できます。 ※基本的には全部インストールをすることが良いですが、一度 --listで確認してから実施してください。
$ softwareupdate -ia
OSのインストールをする場合は再起動が必要な場合があるのでリモートのMacが再起動してもいい状態の場合はリブートして完了です。
$ sudo reboot
感想
1台なら特にこれをやらんでもいいかもしれない。だかCLIが好きな人間としてはこういう方法もあるんだなといい勉強になりました。
今度はこれを自動化して自動アップデートにしたいですね。