24
33

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

最低限これだけあれば何とかなる!?業務でよく使うコマンドたち

Last updated at Posted at 2017-02-17

業務でよく使う基本のコマンドです。
初心者向けです。
最低限、ミニマムで覚えられるように複雑なものは載せていません!

紹介するコマンドたちは--helpとつけると
どんなオプションがあるか表示されるので、--helpしてみてください:doughnut:

tail -f

「ログ出して確認してみて!」
って最初この言葉を言われるのが怖かった...:scream:
なぜならパパっと出せなかったからです...

必要な情報は「ログファイルがどこにあるか」なので、
ここかなーと思うところを探して見つからなければ、まわりの人に「ログファイルがどこにあるか」聞いてください。
まずは、プロジェクト配下にlogsディレクトリがないか等見てみてください。

プログラムが動いている環境にアクセスして
tail -f ログファイルの場所
tail -f application/logs/20170202.logみたいな感じです。

tailコマンドはそのファイルの最後の部分を表示するコマンドです。
オプションの-fは、ファイルの内容が増えた場合、新しい末尾を追加表示するオプションです。
だから、出すログファイルが合っていれば、アクセスするたびログが流れていくと思います。
表示を止める時はcontrol+cです。

他のオプションはこちら

grep -r

「○○の機能修正して!」
「はい、わかりました!」
→○○のソースってどこにあるんだ…:scream:

そんなときにgrepの出番です。
プロジェクトの中で検索ができます。

例えば「アルバム管理の機能修正して」なら
grep -r "アルバム管理"とかgrep -r "アルバム"とかgrep -r "album"とか…
最後のgrep -r "album"は結果がたくさん出てきてしまうかもしれませんが
ソースのコメントに「アルバム管理」など書いてあればヒットします。

検索結果が表示されるので、これっぽいなというファイルを開いてみてください。
ちなみにオプションの-rは「再帰的に検索する」というオプションで
これをつけることで、そのディレクトリ以下のすべてのファイルから検索をしてくれます。

grepの他のオプションはこちら

find

こちらもgrep同様検索ができます。
grepと違うのは、ファイルの種類を指定できたりと、細かなオプションが付けられること。
find . -type f -name "*.php"
とすると.phpのファイルをすべて表示してくれます。
*はワイルドカードなので、任意の文字列を入れていただいても使えます!

locate

こちらも検索ができるもの。
grepやfindよりオプションが少なく、シンプルで処理が早いです。
ただ、あらかじめ作成したデータベースを使って検索するため(だから処理が早い)
データベースの登録が必要です。データベースの作成はupdatedb コマンドでできます。

pwd

今どのディレクトリにいるか見ることができます。

$ pwd
/c/work/project

みたいな感じです。

cd

ディレクトリの移動に使います。
例えばworkに移動したい時。

$ pwd
/c/work/project

今projectディレクトリにいるとして…

相対パスを使う場合
$ cd ../

今と比較してひとつ上へ。
../はひとつ上の階層を指します。

絶対パスを使う場合
$ cd /c/work 

一番上の階層からフルで書きます。

mkdir

ディレクトリが作れます。

touch

ファイルがつくれます。

「project配下にsampleディレクトリ作って、その中にsample.phpファイルを作って」
みたいに言われた時にこうします。

$ cd /c/work/project
$ pwd
/c/work/project
$ mkdir sample

sampleディレクトリが作成されます。
cd sampleでサンプルディレクトリに移動して
touch sample.phpでファイルが作成されます。

mv

↑で作ったようなファイルを移動させるコマンドです。
例えば/c/work/project/sample/sample.phpを
/c/work/project/配下に移動したい場合は以下のようにします。

$ mv /c/work/project/sample/sample.php /c/work/project/sample.php

cp

ファイルやディレクトリをコピーするコマンドです。
使い方はmvと同じですが、こちらはコピーなので、移動元にもファイルが残ります。

rm

ファイルやディレクトリを削除するコマンドです。
ディレクトリとその配下のものすべてを削除したい場合には-rオプションをつけて再帰的に削除します。
また-fオプションをつけると「本当に削除しますか?」と聞かれなくなるので、削除したいフォルダが配下にいくつもファイル・フォルダを持っている場合には
rm -rfとします。
このオプションはcpも共通です。

ls

ファイルやディレクトリの情報を表示するコマンドです。
ディレクトリ配下に何のファイルがあるか確認できます。
例えば先ほどtouchコマンドで作ったsample.phpファイルがちゃんとできているか確認したい時。

$ pwd 
/c/work/project/sample
$ ls
sample.php

chmod

権限(パーミッション)を変更するコマンドです。
ファイルを編集したり実行したり読み込もうとして「アクセスが許可されていません」系のエラーが出た時などに使います。

使い方

①まずはll またはls -lを使って権限を確認します。
ls-lオプションはlongのlで、--format=longをつけても同じ結果が出ます。
ファイルの詳細も同時に表示するオプションです。
ll はls -lのエイリアスです。(※1)

$ ls -l
-r--r--r--  1 user group   115 4月 1 00:00 hoge.php
drwxr-xr-x  6 user group  4520 4月 1 00:00 piyo.php

この-rw-r--r--の部分が今回変更したい権限(パーミッション)です。
②パーミッションを変えます。

chmod 644 hoge.php

パーミッションの読み方についてはこちら。
http://qiita.com/masashi-t-h/items/5f4c4fa768642aad9e06

※1 エイリアスについて

:star:エイリアスとは?
「別名」という意味で、その
名の通り、長いコマンドなどを任意の文字列で登録することができます。
最初の頃「長いしよく使うからエイリアス登録しちゃえば?」と言われたはいいものの
結局登録するのにすごく時間がかかって…ということがありました:scream:

:star:エイリアスの登録の方法
①ターミナルでvi ~/.bashrcをして、bashrcを開きます。
②エイリアスを書く。alias pj='mysql -h project-db -u root -p project'
→pjと打ってEnterを押すとmysql -h project-db -u root -p projectが実行されるようになります。
:wqでvimを終了。
vi ~/.bash_profileでbash_profileを開きます。
⑤起動時にbashrcを読み込むよう設定するため、一番下にsource ~/.bashrcと書きます。
⑥ターミナルを再起動するか、再読み込みコマンドsource ~/.bash_profileを実行します。

詳しくはこちら

php -a

phpが入っていることが前提になってしまいますが
「md5で変換したらどうなるか」「日付をこの形式で出したらどうなるか」などを試してみるときに便利です。
echoをつけないと表示されないので注意。

$ php -a
Interactive shell
$ php > echo md5("password");
5f4dcc3b5aa765d61d8327deb882cf99
$ php > echo date("Y-m-d H:i:s");
2017-02-17 12:44:14

echo

↑でも出てきたecho。
画面に文字列や数値、変数を表示するコマンドです。

vim

ファイルを編集する時に使います。
vim ファイル名でファイルを開いて編集することができます。
ちなみにvim 作成したいファイル名でファイルを作成することもできます。

:star: iかaを押してinsertモードにすること
:star: :qで終了、:wqで上書き保存
:star: /で検索
が最低限、編集する時に必要だと思いました。
もっと便利なのはこちらへ。

cat

ファイルの中身を見たいだけ(編集はしない)の時はこちら。
中身をいじってしまう心配がないので安心して使えます。
cat ファイル名

diff

differenceのdiff。
その名の通り、違いを出力するコマンドです。
「AファイルとBファイルのdiffとって!」と言われたらこれです。
AファイルとBファイルに差分がないか見る場合にはdiff Aファイル Bファイルを実行します。
何も結果が帰って・こなければ完全一致、何か帰ってきたらその行が差分です。
オプション -s を付けると完全一致の場合も報告してくれるそうです!

history

コマンドの履歴を出すことができます。
ちなみに↑ボタンでもコマンドの履歴を辿ることができます。

➜  ~ history 5
    1  ll
    2  cd work/play
    3  pwd
    4  cd ../
    5  git status

historyの後に数字をつけると過去のその件数分の履歴が表示されます。
!番号でそのコマンドを再実行することも可能です。
例えばもう一度pwdをしたい場合には!3で実行できます。

24
33
5

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
24
33

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?