モブプログラミングを仲間とする時に、よく使うコマンドをまとめておくことにしました。
ubuntu, docker, vim, git, tigのコマンドを記載しています。
閲覧のしやすさを考え、同じ記事にしています。
ubuntu
接続
ssh接続
$ ssh {localPCName}@{外部IP} # ssh接続
$ ssh -L {port}:localhost{port} {localPCName}@{外部IP} # sshポートフォワーディング
$ exit # 接続切断
ディレクトリ
| コマンド | 説明 |
|---|---|
| $ Ctrl + c | 実行コマンドキャンセル |
| $ cd ~ | ホームディレクトリに移動 |
| $ cd / | ルートディレクトリに移動 |
| $ cd .. | 親ディレクトリに移動 |
| $ pwd | 作業ディレクトリ確認 |
| $ ls | カレントディレクトリの中身確認 |
| $ ls -l | 権限確認 |
| $ chown -R {userOwner}:{groupOwner} {dirName} | ディレクトリ権限変更 |
| $ mkdir {dirName} | ディレクトリ作成 |
| $ rm -r {dirName} | ディレクトリ削除 |
| $ mv {currentDirName} {newDirName} | ディレクトリ名変更 |
ファイル
| コマンド | 説明 |
|---|---|
| $ rm {fileName} | ファイル削除 |
| $ mv {currentFileName} {newFileName} | ファイル名変更 |
| $ find {pass} -name "{fileName}" | ファイル名検索 |
| $ grep -r "{searchWord}" {dirPass} | ファイル内検索 |
| $ vim {fileName} | ファイルをvimで開く |
| $ cat {fileName} | ファイル内のテキストを表示 |
| $ echo '{any}' > {fileName} | ファイルを新規作成し、''の内容を書き込む |
| $ echo '{any}' >> {fileName} | 既存ファイルに''の内容を書き込む |
vimプラグイン導入(Vundle)
$ git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
$ cd ~
$ vim .vimrc
$ vim +PluginInstall +qall
参照:https://github.com/VundleVim/Vundle.vim
モブプログラミングのvim設定:https://github.com/h-nago/dotfiles
docker
権限エラーが表示された場合、コマンドの先頭にsudoをつけて実行。
docker
# コンテナ
$ docker ps # 動作中のコンテナ表示
$ docker ps -a # コンテナ一覧表示
$ docker rm {conteinerID} # コンテナ削除
# イメージ
$ docker images # イメージ確認
$ docker rmi {imageID} # イメージ削除
docker-compose
$ docker-compose up -d
$ docker-compose ps
$ docker-compose images
$ docker-compose run --rm {ServiceName} bash
vim
表示
| コマンド | 説明 |
|---|---|
| :vsplit | 垂直分割 |
| :split | 水平分割 |
| Ctrl + w, → | 分割画面間の移動 |
| :e {fileName} | ファイルを開く |
編集
| コマンド | 説明 | 備考 |
|---|---|---|
| y | コピー | 5y(5行コピー) |
| p | ペースト | カーソルの1行下に入る |
| dd | 切り取り | 3dd(3行切り取り) |
| x | 切り取り(文字) | 3x(3文字切り取り) |
| u | 元に戻す | Undo |
| Ctrl + r | やり直し | Redo |
| v | 選択 | |
| o | 改行 | ◦ カーソルの1行下に入る ◦ Insertモードに移行する |
| i | INSERTモードに移行 | EscでCommandモードに戻る |
| :set paste | "i"でINSERT(paste)モードに移行する | |
| :set nopaste | INSERT(paste)モード解除 |
移動
| コマンド | 説明 |
|---|---|
| gg | 1行目に移動 |
| G | 最終行に移動 |
| {数字}gg | 数字行に移動 |
| ^ | 行のテキスト先頭に移動 |
| 0 | 行頭に移動 |
| $ | 行末に移動 |
| % | 対応する括弧に移動 |
検索/置換
| コマンド | 説明 |
|---|---|
| / <searchWord> | 後方検索 |
| ? {searchWord} | 前方検索 |
| :%s/{beforeWord}/{afterWord} | ファイル内の最初に見つかった単語を置換 |
| :%s/{beforeWord}/{afterWord}/g | ファイル内のすべての単語を置換 |
| :%s/{beforeWord}/{afterWord}/gc | ファイル内のすべての単語を確認しながら置換 |
保存/終了
| コマンド | 説明 |
|---|---|
| :w | ファイル保存 |
| :wa | すべてのファイルを保存 |
| :q | ファイルを閉じる |
| :qa | すべてのファイルを閉じる |
| :wqa | すべてのファイルを保存して閉じる |
git
インストール(Ubuntu 16.04)
Install
# 最新版Git
$ sudo add-apt-repository ppa:git-core/ppa
$ sudo apt-get update
$ sudo apt-get install git
$ git --version
# 最新バージョンならばOK
設定
設定
# 設定内容確認
$ git config -l
# ユーザー、メールアドレス
$ git config --global user.name "{UserName}" # ユーザー
$ git config --global user.email "{UserEmail}" # メール
# 色
$ git --global color.diff auto
$ git --global color.satus auto
$ git --global color.branch auto
# エディター
$ git config --global core.editor 'vim -c "set fenc=utf-8"' # エディターをvimに設定
# リポジトリ
$ git init # リポジトリ作成
$ git remote add origin {remoteURL} # リモートリポジトリにアクセス
基本操作
基本操作
# クローン
$ git clone {URL}
# ステージ
$ git add -A
& git resert HEAD # add取り消し
# コミット
$ git commit -m '{comment}'
# プッシュ
$ git push origin {localBaranchName}:{originBranchName}
# プル
$ git pull origin {originBranchName}
# ブランチ
$ git branch -a # ブランチの確認
$ git checkout -b {branchName} origin/{branchName} # ブランチのチェックアウト
$ git branch -d {branchName} # ブランチの削除
# ローカルの変更取り消し
$ git chekout {fineName} # 特定のファイル
$ git checkout . # すべてのファイル※追加ファイルは別途削除
# リモートリポジトリの更新情報取得
$ git fetch
# マージ
$ git merge {branchName}
$ git merge --allow-unrelated-histories {branchName} # 無関係なヒストリを持つブランチの場合[Git 2.9から]
# リベース
$ git rebase {rebaseの元にするBranchName}
# Tree表示
$ git log --graph --all --abbrev-commit --date=relative --pretty=format:'%C(red)%h %C(reset)-%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset'
tig
$ tigでmain画面起動させた後のコマンドです。
| コマンド | 説明 |
|---|---|
| $ s | status確認 |
| $ u | ステージ(アップ/ダウン) |
| $ ! | 変更を元に戻す |
| $ C | コミット |
| $ Enter | 選択ファイルを開く |
| $ k | ↑移動 |
| $ j | ↓移動 |
| $ ! | 変更を1つずつ元に戻す ※ファイルを開いた状態 |