はじめに
みなさん、こんにちは。torihaziです。
今、裏でHomeBrewをインストールしようとしているのですが、
その際実行すべきコマンドについて
中でどんな処理が動いていたか気になったので、調べてみました。
途中で挫折するかもしれませんが、やる気が続くまでやってみようかと思います。
目次(ここをクリック)
動かすコマンドについて
容疑者はこの子です。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

そもそもこの/bin/bash -c $(・・)が何をしているか分解すると
curlで指定先のgithubから処理が記載されたスクリプト(中身はテキスト)をダウンロード- $(curl・・)とすることで$(・・)が1の実行結果に置き換わる(コマンド置換)
- その実行結果を bashというシェルを起動して実行する(-cとすればそのまま実行できます)
というものになります。
試しにこの中のうちのcurl部分
curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh
を実行してみましょう。
まず何をしているかというと
curlでgithubからシェルスクリプトのファイルをダウンロードしているだけです。
-fsSLとかオプションついていますが、なくても機能すると思います。
ちなみに
curl -X GET https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh -o ファイル名 curl https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh -o ファイル名 と`-o`とすればテキストファイルとしてファイルに出力できます。 diff したりview したりで中身を見たり違いがないことを確認してみてください。
としても動くと思います。
中身についてはリンクが機能しなかったので下記URLをそのままwebで調べてみてください。
https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh

このような長ったらしいスクリプトが見られるかと思います。
このスクリプトのファイルをcurlコマンドでダウンロードしています。
本当はこのスクリプトファイルについて調査する予定でした。
しかし、こんなに量があるとは思わなかったので暇ができたら続きしようかと思います
終わりに
はじめに謝ります。
あの処理をいちいち説明するのは気が引けました。
ただぱっと見わからないところもあったので
調べるのは次の機会にします。
Linuxの知識について
もし、上記でcurlってそもそも何よ。という方がいたなら
色々ググってみることをお勧めします。
curl自体は私たちがブラウザでページにアクセスするのをコマンドで
行っているだけです。
この記事が参考になるかと思います