はじめに
今回はLinuxのコマンドについて説明したいと思います。
Linuxとは?
まずLinuxとは基本ソフトウェア(OS)の一つであり、基本的にコマンドで操作をします。 Linuxはディストリビューション(環境構築に必要なアプリケーションなどをひとまとめにしたパッケージ製品のこと)が豊富であることや、インターネット上に情報が豊富にあること、CUIで操作できる(文字だけで操作)でき、カスタマイズがしやすい点、安全性の高いサーバーとして使用できるという特徴を持っています。
cd(change directory)
cdコマンドはchange directoryの略であり、ディレクトリを変えることができます。
cd ディレクトリ・ファイル
で指定したディレクトリ・ファイルに移動することができます。
またcd ..
で親ディレクトリ(一つ上の階層)に移動することもできます。
pwd(print working directory)
pwdコマンドは現在自分がいるディレクトリを表示してくれます。 ホームディレクトリで使用すると
~ > pwd /users/username
のように表示されます。 今どこのディレクトリにいるのか分からなくなった時にpwdコマンドを使用します。
ls(list)
lsコマンドはディレクトリ存在するディレクトリやファイルなどを表示できます。
~/Documents ❯ ls diff-practice product-register
今いるディレクトリはDocumentsであり、その中にはdiff-practiceとproduct-registerというディレクトリ・ファイルが入っている状態です。 このようにディレクトリ・ファイルの一覧が表示されます。
mkdir(make directory)
mkdirコマンドはmkdir ディレクトリ
でディレクトリを作成することができます。
~ > mkdir example ~ > ls example
ホームディレクトリでexampleディレクトリを作成しました。それをlsコマンドで確認すると 確かにexampleディレクトリが作成されていることがわかります。
rmdir(remove directory)
rmdir ディレクトリ
でディレクトリを削除することができます。
削除されるディレクトリは中身が何も入っていない空のディレクトリを削除します。
cat(concatenate)
cat ファイル
でファイルの中身を見ることができます。
~ > cat index.html <p>Hello World</p>
上記はindex.htmlファイルの中身を確認しました。HTMLファイルなのでファイルの中身は
<p>Hello World</p>
と記述されています。
less
less コマンドは、ファイルの内容が長い時に使用します。
less ファイル名
で起動することができます。
lessコマンドを使用するファイルは画面に収まらない場合があるので以下のコマンドを使用してファイルの中身を確認します。
コマンド | ファイル内の挙動 |
---|---|
スペース | 次ページへ進む |
b | 前の画面に戻る |
f | 次の画面に進む |
↑ | 前の行に進む |
↓ | 次の行に進む |
/単語 | 単語を検索 |
q | コマンド終了 |
コマンドを組み合わせてファイルの中身を確認できます。
tail
tailコマンドはファイルの最終行を表示してくれます。
オプションをつけなかった場合、末尾から10行を表示します。
tail -n 行数 ファイル名
で末尾からn行を表示できます。
他にもtail -f ファイル名
でファイルの変更状態を常に確認することができます。
touch
touchコマンドはtouch ファイル名
でファイルのタイムスタンプを変更します。
ファイルのタイムスタンプとは、ファイルへのアクセス日時や更新日時のことです。
存在していないファイル名の場合は空ファイルを作成してくれます。
rm(remove)
removeコマンドはrm ファイル名
でファイルを削除することができます。
rm -f ファイル名
でディレクトリやディレクトリの中にあるファイルなども削除することができます。
また一度削除したファイルを復活させることはできないため、ファイルを削除する時に確認を取りたいときにはrm -i ファイル名
で誤ってファイルを削除することを防ぐことができます。
mv(move)
mvコマンドはmv 変更前のファイル名 変更後のファイル名
でファイルの名前を変える事ができます。
また、ファイルの名前を変更ができるだけでなく、mv ファイル名 移動先のディレクトリ名
ファイルを別のディレクトリに移動することもできます。
cp(copy)
cpコマンドはファイルやディレクトリをコピーする時に使用します。
~ > cp コピー元ファイル名 コピー先ファイル名 ~ > cp test.txt test2.txt
このようにtestファイルの内容をtext2のファイルにコピーすることできます。
ln(link)
lnコマンドln リンク元ファイル リンク後の名称
を実行することでリンクを貼ることができます。
つまり、ファイルやディレクトリのリンクを作成する事ができます。
またリンクの貼り方にも種類があって、ハードリンクとシンボリックリンクの2つがあります。
シンボリックリンクを作成するには-s
オプションをつけます。
lnコマンドに何もオプションをつけないで実行するとハードリンクが作成されます。
ハードリンク | シンボリックリンク |
---|---|
ハードリンクを削除しても 元ファイルは削除されない |
元ファイルを消すと シンボリックリンクからアクセスエラーになる |
上記の他にも違いがありますが、これらがハードリンクとシンボリックリンクの代表的な違いです。
find
findコマンドはfind パス名 -name ファイル名
でディレクトリ配下にあるファイル名を検索することができます。
またディレクトリを検索する際に一般ユーザーに実行権限が与えられていない場合もあります。
chmod(change mod)
chomodコマンドはファイルのアクセス権を変更する際に使用されます。 ファイルのモードを所有ユーザー、所有グループ、その他のユーザーに設定します。
所有ユーザー | 所有グループ | その他ユーザー |
---|---|---|
rwx | r-- | r-- |
上記のr、w、xはそれぞれ読み込も、書き込み、実行を意味しており、上記では
所有ユーザーはrwx
なので3つの権限があり、所有グループはr--
なので読み込みのみに権限があり、
その他ユーザーはr--
なのでこちらも読み込みのみに権限があるという意味です。
これらの権限を変更する事ができるのがchmodコマンドです
chown(change owner)
chownコマンドはファイルの所有者を変更する際に使用されます。 実行するにはrootユーザーである必要があります。一般ユーザーでファイルを作成した後、ファイルの所有者の変更はできないため、必ずrootユーザでなければいけません。
ps
psコマンドは現在実行中のプロセスなどを確認するためのコマンドです。
オプション | 効果 |
---|---|
-A | すべてのプロセスを選択することができる |
e | コマンドの後に、環境を表示 |
kill
Linuxにはシグナルというイベントを送信してプロセス制御する機能があり、killコマンドはシグナルの一種です。
killコマンド指定したプロセスIDのプロセスを終了させることができます。
kill オプション プロセスID
で指定したプロセスを終了することができます。
Column 1 | Column 2 |
---|---|
-s | 指定したシグナル名orシグナル番号を送信 |
-l | シグナルの種類を表示 |
おわりに
以上、Linuxの基本的なコマンドについて解説しました。 サーバーなどを操作する際にはLinuxの知識は必須なのでぜひ習得しましよう!!