プログラミンGOO

プログラミングナレッジ、ワードプレス、広告収入等について、気づき・備忘録を残していきます。

シェルスクリプト基礎

基礎知識

シェルとは、ターミナルやバッチファイルから命令を受け取り、カーネルへ処理を伝える、デフォルトでインストールされているソフトウェア。
(ターミナルとは入力画面のこと。コマンドプロンプトや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