基礎知識
シェルとは、ターミナルやバッチファイルから命令を受け取り、カーネルへ処理を伝える、デフォルトでインストールされているソフトウェア。
(ターミナルとは入力画面のこと。コマンドプロンプトやGitBashもターミナルの一種)
シェルスクリプトとは、シェルで使用できる記法で書かれたスクリプトのこと。
プログラムというより、コマンドを並べているだけ。
Windowsではコマンドプロンプトのコマンドが記載され、バッチファイルと呼ばれる。Windows即ちマイクロソフトの記法なので、VBと近しいものがある。拡張子は.bat。
UNIXではシェルの命令が書いてあり、そのままシェルスクリプトと呼ばれる。拡張子は.sh。
記法
- スペースは開けずに記述することが多い
- カウントは0始まり
- すべてグローバル変数
ディレクトリ関連
ディレクトリの移動
CD
オプション
\ :ドライブ直下に移動 /D :ドライブ変更 %~dp0 :バッチファイルの位置をカレントディレクトリにする※ ┗ %:引数参照。%1以降はバッチに渡される引数を示す。%0は特殊で、起動されたバッチファイルのフルパスが格納される。 ┗~:実行されているファイルのパス?ホームディレクトリ? ┗d:ダブルクォートを除く ┗p:ドライブ文字だけに展開する
ディレクトリの確認
dir %homepath% :ホームディレクトリ %CD% :カレントディレクトリ
変数
SET var=val ※変数varに値valを代入 %var% ※変数varを参照
オプション
/a ※演算可能にする /p ※標準入力を求める
出力
echo "hello" ※予約語のエスケープは^ echo %var%
コメント
※複数行のコメントアプトはできない
rem comment : comment :: comment