〜開発環境の構築〜2016.10.19エンジニアスキルタナカトモフミターミナル部Tweetみなさんこんにちは。部長のタナカトモフミです。ソフトウェアエンジニアのみなさんであれば日頃ターミナルを使う機会が必ずあるのではないかと思います。ターミナルをきちんと使いこなせているでしょうか?無駄なコマンドを入力していたりしないでしょうか?ターミナルを使用する場面が多ければ多いほど、きちんと使いこなせば作業効率は何倍にも向上するはずです。本連載では意外と見落としがちな基本的な事柄からちょっとマニアックなテクニックまで、ターミナルを使いこなすための方法を若手エンジニアのタミ夫くんとシェルスキー先生と一緒に学んでいきたいと思います。xを想定していますが、環境構築やコマンドのインストールなど一部を除けばlinux上でもそのまま適用することができます。それではターミナル部へようこそ!タナカトモフミタミ夫くんがターミナルで作業をしているのですが、なにやら困っているようです。あれ?おかしいな...コマンドがないなー。したんじゃ?このWeb記事の通り、コマンドを打ってるんですけど、なんか動かないんスよー。そのコマンド、インストールされてないんじゃないかのう?え、自分で入れないと使えないんスか?インストーラどこスかー?インストーラて。Homebrewを使ってインストール・管理するのが一般的じゃよ。えー!?そうなんスかぁー?やばいっスねー。早く言ってくださいよー。もったいぶっちゃってー。X用のパッケージマネージャーです。UNIX環境でよく使われる開発ツールやライブラリといったパッケージを簡単にインストール・アップデートができるようになります。オープンソースで開発されており、有志によって大量のパッケージが準備されているため、ほとんど主要な開発ツールを揃えることができます。Homebrewをインストールしよう!Homebrewのインストールは非常に簡単です。ターミナルを起動して以下のコマンドを実行しましょう。-fsslhttps://raw.githubusercontent.com/homebrew/install/master/install)"基本的に自動でインストールされますが、途中でいつくかの操作が必要になるので注意してください。以下のメッセージが表示されたら、エンターキーを押下して先に進みます。abort以下のメッセージが表示されたら、macにログインする際のパスワードを入力します。Xcodeも自動的にインストールされます。xcodedone.これで準備完了です。インストール方法や途中の操作は変更になる可能性があります。うまくいかないなと思ったら、本家のサイトに従ってインストールしましょう。■パッケージのインストール早速、Homebrewを使用してパッケージのインストールや検索の方法を覚えましょう。インストールのコマンドは以下の通りです。package_namewgetをインストールしたい場合は、以下のようになります。wget複数のパッケージをまとめてインストールしたい場合はパッケージをスペース区切りで複数指定することもできます。vimHomebrewでインストールしたパッケージがどこにインストールされるか、確認しておきましょう。3cellar/openssl/1.0.2h_1/bincellar/openssl/1.0.2h_1/includecellar/openssl/1.0.2h_1/libcellar/openssl/1.0.2h_1/sharecellar/wget/1.18/bincellar/wget/1.18/shareHomebrewでは/usr/local/Cellarにパッケージがインストールされるようになっています。パッケージ名のディレクトリ配下は、バージョン番号で区切られており、複数のバージョンが保持できるようになっています。最新のパッケージにアップグレードして調子が悪いなんて時にも、すぐに切り戻すことができるため安心して使用できます。PACKAGE_NAMEを使用します。PACKAGE_NAMEを使用します。startどのバージョンがインストールされるのか?依存するパッケージ、コンパイル時のオプションが表示されます。■パッケージのアップグレードパッケージを最新版にアップグレードする手順は2段階あります。PACKAGE_NAMEコマンドです。パッケージを特に指定しない場合はインストール済みのすべてのパッケージがアップグレード対象となります。servicesコマンドを使用すれば、mysqlやredis,memcachedといったデーモンサービスの起動・停止も管理できます。homebrew.mxcl.memcached)■パッケージのバージョン管理パッケージのインストールで説明したように、Homebrewでは同じパッケージの複数のバージョンを保持することができます。パッケージのアップグレード等で調子が悪くなった、パッケージを簡単に元に戻すことができます。PACKAGE_NAME`を使用してバージョンを固定することもできます。wget■使い方がわからない時のhelpを覚えておこうinstallやservicesなど多様なコマンドがありますので、使い方をすべて覚えるのは難しいでしょう。Caskを使用すれば、Mac向けのアプリもインストールできるようになります。WebブラウザやIDEなどのアプリがインストールできますので、新しいMacのセットアップなどで大変便利です。以下のコマンドで使用できるようになります。Chromeをインストールすることができます。installed!注意点よくあるハマりポイントを2点紹介しますので、遭遇したら参考にしてください。searchできなくなる検索をやりすぎた場合など、GitHubのAPIの制限にかかりエラーとなる場合があります。Tokenを生成し、HOMEBREW_GITHUB_API_TOKENという環境変数に値を設定すれば使えるようになります。Toolsはインストールされますが、それだけではインストールができないパッケージが存在します。StoreのアプリからXCodeをインストールしてから、再度インストールしましょう。build.ちなみにHomebrewからXCodeをインストールしようとすると以下のようになります。Storeからインストールしましょう。store.またインストール後もXCodeを起動してライセンスに同意していない場合は以下のようなエラーがでる場合があります。-licenseXCodeを起動してライセンスに同意するか、上のエラーで推奨されているコマンドを使って同意しましょう。まとめどうじゃ、わかったかの?やばいッス。ちなみに何をインストールしようとしてたんじゃ?wgetッスね!ないとこのサンプルが動かなくて。(あ、それcurlで代用できそうじゃからHomebrewいらなかったんでは・・・)あとgitのサブコマンドのworktreeって奴が使えなくて困ってたんスけど、Homebrewで最新版入れたら使えるようになったッス!やばいッス!おーそうかそうかよかったのう!コマンドがないパターン以外にも、古いバージョンが入ってるから新しいの使いたいって場合にも使えて便利じゃな!(フゥ〜、危うく間違った方向に導くところじゃったわ。)Homebrewを導入することでMac上にUNIX系のツールをインストールできるようになり、タミ夫くんも快適なターミナル生活の第一歩を踏み出す準備ができました。次回はターミナル上で利用できる便利なショートカットを紹介したいと思います。お楽しみに!原稿:タナカトモフミ株式会社ビズリーチ所属。ScalaコードをVimで書く日々をおくる。IDEAに浮気してしまう。Atomが主流のため、戦いは続く。Corporation。