LoginSignup
11
16

More than 5 years have passed since last update.

新人サーバーエンジニア向けコマンド紹介(中級)

Last updated at Posted at 2015-06-17

新人サーバーエンジニア向けコマンド紹介(中級)

少し発展したコマンドやテクニックについて紹介

コマンド一覧

man

オンラインマニュアルを参照する。
これを使えば、たいていのコマンド使用方法が簡単に分かる。

man ls
man mv

find

ファイルを検索する。
たくさんのオプションがあるが、詳しいことはmanを見て欲しい。

find . -name "*.log"  # 末尾にlogとついたファイル名をフルパスで出力

gzip

ファイル をgzip形式で圧縮する。
フォルダは圧縮できない。
ログファイルの圧縮に使用すると、100分の1のファイルサイズになったりする。超優秀。
圧縮率にこだわりたい場合は、代わりにbzip2を使用すると良い。
bzip2の使い方はgzipとまったく同じなので、解説はしない。
フォルダ圧縮は後述のtarコマンドで行うと良い。
オプションについてはmanを見て欲しい。

gzip hoge.log  # hoge.logをhoge.log.gzへ圧縮して置き換える。hoge.logは消える 
gunzip hoge.log.gz  # hoge.logを解凍

tar

ファイルやフォルダを一つのファイルへ固める。
単体では圧縮は行わないが、オプション指定でtarで固めてgzipで圧縮できる。
オプションについては(ry

tar cfvz hoge  # hogeフォルダをtar.gz形式で圧縮
tar xfvz hoge.tar.gz  # hogeフォルダを解凍

tail

ファイルの末尾を表示する。
-fオプションと組み合わせると真価を発揮する。
具体的には -f と組み合わせた場合、ファイルの監視モードになる。
/var/log/httpd/error_log を指定した場合、apacheのログをリアルタイムで追うことができる。
オプションについt(ry

tail hoge.txt  # hoge.txtの末尾10行を表示
tail -f /var/log/httpd/error_log   # apacheエラーログを監視

head

末尾があるなら頭を表示するものもある。
こちらは単体だと使用する機会はあまりない。

head hoge.txt  # hoge.txtの末尾10行を表示

ps コマンド

今何のプロセスが動いているか調べるのに使う。
よくgrepと組み合わせる。
オプションn(ry

ps ax | grep mysql   # mysql関係のプロセスを表示

パイプテクニック

これのためにCUIはあるといっても過言ではない。
パイプはこれ。|
JISキーボードなら、shift + ¥キーで入力できる。
コマンドで出力した内容を別のコマンドへ引き渡せる。

よく使う組み合わせ

ps ax | less  # ps axの内容を出力せず、lessで閲覧する。
ls | grep log  # logという名前のつくファイルやフォルダだけ出力

xargs

パイプと言ったらxargsコマンド。
xargsを使用すると、後に続くコマンドへ 引数 として引き渡すことができる。

ls | xargs mv ../  # 今いるフォルダの中身を全て一つ上の階層へ移動させる
find . -name .DS_Store | xargs rm   # 今いるフォルダより下にある.DS_Storeを全て削除

リダイレクト

パイプとは若干違うかも。
リダイレクトとは、>>>のこと。
出力内容をファイルへ変更する。
>は新規書き込み。指定したパスに何か書かれていた場合は、消去されて書き込まれる。
>>は追記書き込み。末尾へ追加して書き込む。

ls > result.txt   # lsした結果をresult.txtへ書き込む
cat id_rsa.pub >> ~/.ssh/authorized_keys   # 公開鍵の登録

ssh系コマンド

sshについて忘れてた!
sshを使うと、リモートのサーバーへ接続してshellで操作できる。
トンネリングとか便利。

ssh hoge@192.168.10.30   # hogeユーザーで192.168.10.30へ接続
ssh hoge@www.hogehogefoofoobarbar.com

scp

リモートサーバーへファイルのコピーをする。

scp hoge.txt hoge@192.168.10.30:hoge/  # hoge.txtをリモートのhoge/へコピーする。
scp -r hoge_folder hoge@192.168.10.30:  # フォルダのコピー

z系コマンド

zgrepzcatというコマンドがある。
内容は、.gzなファイルに対して該当のコマンドが走る。

zless error_log.gz   # error_log.gzを閲覧する。解凍した内容を閲覧できる。
11
16
0

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
11
16