1年経っていたので再度ブラッシュアップ
#ターミナル学習メモ
###1.新規ファイル作成
touch ◯◯.txt
→◯◯ファイルを作成
###2.新規ファイル作成して編集
vi(vim) ◯◯.txt
→◯◯ファイルを作成し、編集エディタを開く
###3.文書の中身を確認
cat ◯◯.txt
-> とりあえず読み込んで末尾にフォーカス
less ◯◯.txt
-> スクロールができる
vi(vim) ◯◯.txt
###4.ディレクトリを作成
mkdir ◯◯
※make direction の略
→◯◯という名前のディレクトリを作成。
一気に階層のあるディレクトリを作成
mkdir -p xyz/abc/test
※javacommonsさん、ありがとうございます。
###5.ディレクトリ(ファイル)を移動する
cd ◯◯
※current directoryの略
例) cd Desktop/directory1/directory2
→編集したいディレクトリ(ファイル)に移動。
###6.ディレクトリ(ファイル)の名前編集
mv 変更したいディレクトリ名(ファイル名) 変更後のディレクトリ名(ファイル名)
※moveの略
例)
mv beforeName.text afterName.txt
###7.ファイルをコピーする
cp ~/Desktop/test.php ~/Downloads/test.php
※copyの略
例)
cp ./copiedFile.php ~/Desktop/
ディレクトリコピーの場合
例)
co -R ./public ~/Desktop/
###8.ディレクトリを削除する
rm ファイル名
rm -R ディレクトリ名
※ディレクトリの削除に関しては-Rを記入。
###9.階層を戻る
ホームディレクトリへ戻る: cd
一つ上のディレクトリに戻る: cd ..
直前にいたディレクトリに戻る: cd -
※arco5pianoさん、ありがとうございます。
特定のディレクトリに移動する: cd ~/Desktop/test/
###10.確認作業
現在使用しているディレクトリを確認: pwd (print working directionの略)
現在使用しているディレクトリの中身のディレクトリ、ファイル一覧を表示: ls (listの略)
###11. ディレクトリの情報をみる
今いるディレクトリ内のファイルやディレクトリの情報を閲覧
shun:tests matsumurashun$ ls -la
total 0
drwxr-xr-x 3 matsumurashun staff 96 9 24 04:22 .
drwx------@ 55 matsumurashun staff 1760 9 24 04:22 ..
-rw-r--r-- 1 matsumurashun staff 0 9 24 04:22 test.txt
※listの略
※-l
は隠しファイル(.envのように.がつくファイル)は含まずに表示します
※-a
は隠しファイルを含んで表示します
※-la
は上記二つのオプションを一気に指定しています
指定したディレクトリ内のファイルやディレクトリの情報を閲覧
shun:Desktop matsumurashun$ ls -la ./tests
total 0
drwxr-xr-x 3 matsumurashun staff 96 9 24 04:22 .
drwx------@ 55 matsumurashun staff 1760 9 24 04:22 ..
-rw-r--r-- 1 matsumurashun staff 0 9 24 04:22 test.txt
いちいちディレクトリに移動しなくても閲覧可能なので便利。
###12. 検索する
ファイル内の文字列を検索
例) test.logの'ERROR'を検索して表示
$ cat ./test.log | grep 'ERROR'
※|
はパイプと言います。
ファイル内の指定した文字列以外を検索
例) test.logの'ERROR'を抜いて検索
$ cat ./test.log | grep -v 'ERROR'
ファイル内の指定した文字列以外を検索しつつ、特定の文字列を検索
例) test.logの'ERROR'を抜いて検索しつつ、'INFO'という文字列を検索
$ cat ./test.log | grep -v 'ERROR' | grep 'INFO'
※パイプは区切りと覚えればいいです。
更新性のあるファイルをリアルタイムで表示
例) test.logのアクセスログをリアルタイムで表示させる
$ tail -f ./test.log
※これをPCでとりあえずやっておけば、仕事してる感が出ます。
###13. 過去に打ったコマンドをもう一回使いまわしたい
$ history
※.bash_historyという隠しファイルに保存されている内容が表示されます。
特定のコマンドを履歴から探したい
$ history | grep ssh
shun: matsumurashun$ history | grep ssh
300 vagrant ssh
768 history | grep ssh
770 ssh 111.111.11.11
771 history | grep ssh
// コピペはめんどくさいというかたへ
// 番号を!の後に打てばその番号のコマンドが実行されます
shun: matsumurashun$ !300 (vagrant sshが実行される)
便利なショートカットコマンド
ctrl + r
-> 履歴からキーワード検索
例)ctrl + r
で出てくるフォームに rails c
と入力すると、history | grep "rails c" と同じ結果がリアルタイムで表示される。同じ検索キーワードで履歴を遡る場合はctrl
を押した状態で r
を再度押す。
※scpとか、秘密鍵のパスをたまにタイポするのでこっちの方が正確に迅速に業務を推進できます。
まだまだ実力不足なので、みなさんもコアなコマンドを知っていたら是非教えてください。