ターミナル

ターミナル
コマンドと呼ばれる命令文を使いPCの操作や設定をおこなうためのツール。
Shell
$ マークなどのプロンプトを表示してユーザーからの入力を待ち、入力されたファイル名のプログラムを実行し、終了したらまたプロンプトを表示して待つプログラム。
/bin/sh はshellの事。
Macのデフォルトはzshbash、他にもcshtcshがありchshコマンドで変更できる。
文字や記号などのテキストで構成されている テキストファイルを編集するソフトのこと。
VS CodeVimはこっち!
テキストエディタとターミナルの区別がつかなかったが、やっと分かった✨

ターミナルのコマンド

ls はファイルやディレクトリの一覧を表示
Pwdは現在いるディレクトリのパスを表示
echo は引数として与えた文字をそのまま画面に表示
cdは引数に与えたディレクトリに現在のワーキングディレクトリを変更する(相対パスで指定)
curlはネットからファイルをダウンロード
openはファイルやURLを開く
(open .はよく使われる)
touchは空のファイルを作成
mkdirディレクトリを作成
(-pオプションで深い階層を持つディレクトリも一気に作れる)
cpはファイルをコピー
(-rオプションを付ければディレクトリを丸ごとコピーできる)
mvはファイルを移動
(cpと違って元のファイルは無くなってしまう。
また、cpと違ってオプションを付けなくてもディレクトリの移動が可能。)
rmはファイルを削除
(-rオプションを付けるとディレクトリを丸ごと削除。危ない!)
catはファイルの中身を表示
(本来は引数に渡した二つのファイルを繋げて表示するコマンド)

作業の自動化に使えるコマンド

shはファイルの中に書いたコマンドを順番に実行
#!shebang)はターミナルで実行しようとしたファイルの1行目の最初の二文字が#!だったら、その後に書いてあるコマンドに2行目以降の全てを渡すコマンド。
これを利用して様々なスクリプトを単体で実行できる独自のコマンドにすることができる!

環境変数

最初から設定されている変数で各種コマンドの動作に影響を与えるもの。
PATHディレクトリ名を設定しておくと、その中にあるプログラムはディレクトリ名を省略してファイル名だけで実行できる
他にもHOMEなど

自分だけが使うようなスクリプトはホームディレクトリにbinというディレクトリを作ってそこに置く人が多い

PATHの設定方法

$ export PATH=$PATH:~/bin

export は環境変数を設定するコマンド
環境変数名と中身を =(イコール)で区切って渡すとその値に設定される
~/bin というのは $HOME/bin と同じ意味( $HOMEを ~(チルダ)一文字で表す)

 

色々なソフトの互換性についてはみんな経験から頭に入っていて管理していると思っていたので、パッケージマネージャーの存在を知りびっくりした!
Homebrew便利すぎるありがたすぎる✨
viはすごくやりづらいけどこれからどの程度使うものか。。
ターミナルは今までの謎が解けスッキリ!楽しかった☺️