CodeCode

なんか色々おぼえ書き。だいたいweb制作関連。

コマンドを自作したメモ

コマンドとは

CLIで使う命令のこと cdとかlsとかslとか 多分最後のはいらない。 ※slをインストールして、コマンドラインでslと打つとSLがコマンドラインツール上を走る。

シェルスクリプト

シェルスクリプト、ファイル操作等のコマンドを組み合わせるスクリプト。

例:test.sh

#!/bin/sh

mkdir testdir
rm -rf testdir
$ sh test.sh

上のシェルスクリプトを実行するとtestdirディレクトリが制作され、消される。 特に意味はない。

コマンドの内容

今回、ローカルサーバ(apacheとMySQL)を起動・再起動(apacheのみ)・停止させるスクリプトを作った。

#!/bin/sh

if [ $# -ne 1 ]; then
  echo "実行するには1個以上の引数が必要です。" 1>&2
  exit 1
fi

if [ $1 = "start" ]
then

  sudo apachectl start
  mysql.server start
  exit 1

elif [ $1 = "stop" ]
then

  sudo apachectl stop
  mysql.server stop
  exit 1

elif [ $1 = "restart" ]
then

  sudo apachectl restart
  exit 1

else
 echo  "失敗しました"
 exit 1
fi

exit 0

作ったスクリプトをserverという名前(拡張子なし)で保存する。 続いて、serverを保存したディレクトリに移動し、実行できるように権限を与える。

$ chmod a+x server

権限が付与できたら、$PATHで指定されたところにファイルを置く。 今回は、/usr/local/bin/

$ cp server /usr/local/bin/
$ which server
/usr/local/bin/server

パスが出れば完了。

$ server start

で起動

$ server restart

で再起動

$ server stop

で停止ができる。

TOPへ戻る