モブプログラミングを仲間とする時に、よく使うコマンドをまとめておくことにしました。
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つずつ元に戻す ※ファイルを開いた状態 |