LoginSignup
0
2

More than 1 year has passed since last update.

使い捨てのコマンド作成

Last updated at Posted at 2021-09-08

概要

頻繁に行う複数のコマンド入力を一回のコマンド入力で済むようにします。
npmとかwebpackとかgcloudとか書いていますが本題と関係ありません。

今回行う流れ

  1. コマンド作成
  2. コマンド登録
  3. 使う

今回簡略化したかった操作

一例なので読まなくていいです。
  1. npmプロジェクトのディレクトリに移動
  2. webpackの出力先を削除
  3. webpackで出力(バインド)する
  4. gcloudでサーバーに送信

コマンド作成

好きなディレクトリにファイルを作成して開く

viじゃなくてVSCodeとかEmacsとかなんでも大丈夫です。

$ cd ~/Documents/cmd
$ touch newcmd
$ vi newcmd

中身を書く

&& でコマンドを繋げると成功した場合に次の処理に進みます。

1つ目の操作 &&
次の操作 &&
次の操作

今回の例では次のようなコマンドになります。
pushd ~/project &&
rm -rf dist/* &&
npm start &&
gcloud compute scp --recurse ./dist/* hogeserver:/etc/hoge &&
popd

もう少しちゃんとやりたい人は変数やsetで調べると良いかもしれません。
こんな感じ↓

# setting
set -e -o pipefail

# var
readonly LIVETS_PATH="~/project"
readonly TRANSMITTER_PATH="dist/*"
readonly RECEIVER_PATH="hogeserver:/etc/hoge"

# main
pushd ${LIVETS_PATH}
rm -rf ${TRANSMITTER_PATH}
npm start
gcloud compute scp --recurse ${TRANSMITTER_PATH} ${RECEIVER_PATH}
popd

コマンド登録

筆者がzsh使っているのでzshに書きます。
bashの人はそっちに書いてください。

~/.zshrc を開く

$ vi ~/.zshrc

追記する

alias newcmd='~/Documents/cmd/newcmd'

こうすることでnewcmdと入力した時に~/Documents/cmd/newcmdと入力したのと同じことになります。

使う

次で動きます。

$ newcmd
動く

動かない人向け

そんなコマンドがないと言われる人

$ newcmd
zsh: command not found: newcmd
$ source ~/.zshrc
$ newcmd
動く

権限がないと言われる人

$ newcmd
permission denied
$ chmod 777 ~/Documents/cmd/newcmd
$ newcmd
動く

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2