Help us understand the problem. What is going on with this article?

ターミナル学習まとめ

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とか、秘密鍵のパスをたまにタイポするのでこっちの方が正確に迅速に業務を推進できます。

まだまだ実力不足なので、みなさんもコアなコマンドを知っていたら是非教えてください。

Cesaroshun
大学では数学の確率をメインに勉強していました。MensaJapan会員になりました。変なことと犬が好き。 2019/12/04よりフリーランス
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした