Linuxのインストールと仮想マシン・コンテナの利用
ディストリビューション、カーネル、パッケージ管理
用語 | 意味 |
ディストリビューション | Linuxを使いやすくまとめたパッケージセット |
カーネル | OSの中心(料理で言えば素材) |
パッケージ管理 | ソフトの出し入れをラクにする仕組み(例:APT、YUMなど) |
shutdown コマンド
はたらき システムを終了させる
備考
・オプションを特に指定しない場合は -P オプションを指定したときと同じ
・システムを終了してすぐ電源を切る場合は「halt -p」あるいは「poweroff」コマンドでも行える
・システムを終了して再起動する場合は「reboot」コマンドでも行える
・基本的に root user しか使えない(設定によっては一般ユーザーでも実行できるようになっている)
ファイル・ディレクトリの操作と管理
ファイル管理の実行
ファイルやディレクトリをコピー、移動、削除とよく使う基本的なコマンドになるのでよく覚えておきましょう!
lsコマンド(ファイル一覧表示)
lsコマンドの語源は「list」からきています。ディレクトリをしていするとファイル名を表示。ファイル名を表示すると属性を表示します。オプションを使わない時には、カレントディレクトリ内のファイル名とサブディレクトリを表示します。
オプション | 説明 | 語源 |
-a | 隠しファイル(ドット「.」で始まるファイル)を含む全てのファイルとディレクトリを表示 | all(すべて) 🗂 意味:隠しファイル( . から始まるファイル)も全部表示する🧠 語源:「all = すべて」 |
-A | 「-a」と同じ。ただし、カレントディレクトリ「.」と親ディレクトリ「..」は表示しない | Almost all(ほぼすべて) 🗂 意味: -a とほぼ同じだけど、「.(カレント)」と「..(親)」だけは除外🧠 語源:「A = Almost all(ほとんど全部)」 |
-d | 指定したディレクトリの情報を表示 | directory(ディレクトリ) 🗂 意味:ディレクトリの中身じゃなくて、そのディレクトリ自身の情報を表示 🧠 語源:「d = directory(フォルダの意味)」 |
-F | 名前の後ろにファイルタイプを表示 ・通常のファイル:なし ・実行可能ファイル:* ・ディレクトリ:/ ・シンボリックリンク:@ | file type(ファイルの種類) 🗂 意味:ファイル名の末尾に、種類を示す記号をつける 🧠 語源:「F = File type」 |
-i | inode番号を付けて表示 | inode(アイノード) 🗂 意味:ファイルシステムの**ID番号(inode番号)**を表示 🧠 語源:「i = inode」 |
-l | 詳細情報(パーミッション、所有者、サイズ、更新日時など)の表示 | long format(長い形式) 🗂 意味:ファイルの詳細情報(パーミッション、所有者、サイズ、更新日時など)を表示 🧠 語源:「l = long(長い形式)」 |
-R | サブディレクトリの内容も再帰的に表示 | recursive(再帰的) 🗂 意味:サブディレクトリの中身もずーっと下まで全部表示 🧠 語源:「R = Recursive(再帰=深掘り表示)」 |
mvコマンド(ファイル・ディレクトリの移動)
moveコマンドは指定した場所にファイル・ディレクトリを移動させます。さらに、ファイル名の変更にも利用します。
オプション | 説明 | 語源 |
-f | 移動先に同名のファイルやディレクトリがある場合、強制的に上書きする | force(フォース) 意味:強制する 「force 上書き」の略で、「確認せずに、強制的に上書きして移動する」という動作を表してるよ。 🧠イメージ:「force(力づく)」で「問答無用で上書き」! |
-i | 移動先に同名のファイルやディレクトリがある場合、上書きしてよいかどうか問い合わせる | interactive(インタラクティブ) 意味:対話的な操作 「interactive mode(対話モード)」の略で、上書き前に「このファイル、上書きしていい?」とユーザーに聞いてくるようになる。 🧠イメージ:「interactive(対話)」=「ユーザーとやりとりしながら進める」 |
rmコマンド(削除)
rmコマンドの語源は「remove」からきています。ファイルやディレクトリを削除します。
オプション | 説明 |
-f | 削除してよいかどうか問い合わせない |
-i | 削除してよいかどうか問い合わせる |
-r | -R | ディレクトリ全体を再帰的に削除 |
tarコマンド(アーカイブ作成・展開)
tarコマンドの語源は「tape archive」からきています。ファイルやディレクトリを1つのアーカイブにまとめたり、展開したりします。
オプション | 説明 |
-c | 新しいアーカイブを作成 |
-x | アーカイブからファイルを展開 |
-t | アーカイブの内容を一覧表示 |
-f | アーカイブファイル名を指定 |
-v | 処理の詳細情報の表示 |
-z | gzipを通して圧縮/展開 |
-j | bzip2を通して圧縮/展開 |
-J | xzを通して圧縮/展開 |
findコマンド(検索式・アクション)
findコマンドは検索が得意です。ファイル、ディレクトリを検索したりします。さらに、アクセル権、ファイルサイズ、更新日時を指定して検索することも可能です。検索の際には、メタキャラクタを使うことができます。
検索式 | 説明 |
-name ファイル名 | ファイル名で検索 |
-atime 日数 | 最終アクセス日で検索 |
-mtime 日数 | 最終更新日で検索 |
-perm アクセス権 | アクセス権で検索 |
-size サイズ | ファイルサイズで検索 |
-type ファイルの種類 | ファイルの種類で検索(f:ファイル, d:ディレクトリ, l:シンボリックリンク) |
-user ユーザ名 | ファイルの所有者で検索 |
-maxdepth 階層数 | 指定した階層まで検索 |
-mindepth 階層数 | 指定した階層から検索 |
-print | 検索結果を改行で区切って表示(省略可能) |
-print0 | 検索結果をNULL文字(\0)で区切って表示 |
-exec コマンド {} \; | 検索結果のファイルに対してコマンドを実行 |
ファイルの圧縮、解凍
大きなサイズを圧縮して、ネットワーク経由で送信したいときに、事前に圧縮をしておくことにより効率があがります。
bzip2(圧縮)
ファイルを圧縮するときに使用する。gzipよりも圧縮率が高いが処理に時間がかかる。
オプション | 説明 |
-d | 圧縮ファイルを展開 |
-c | 元ファイルを残して標準出力に出力 |
GNUとUnixのコマンド
テキスト処理フィルタ
Linuxには様々なテキスト処理をするコマンドがあります。これを使いこなすことができたら便利になります。
catコマンド
ファイルの中身を表示したり、つなげたりするコマンド!
名前は「concatenate(つなげる)」の略で、「キャット」と読むよ(🐱とは関係ないけど覚えやすいよね)
コマンド例 | 説明 |
---|---|
cat file.txt | ファイルの中身をそのまま表示 |
cat file1.txt file2.txt | 複数ファイルをまとめて表示(内容がつながって出てくる) |
cat > new.txt | 標準入力(自分の入力)をファイルに保存(終了は Ctrl + D ) |
cat file1.txt >> file2.txt | file1 の中身をfile2 の末尾に追記 |
cat -n file.txt | 行番号つきで表示(オプション-n ) |
headコマンド
headコマンドはテキストファイルの先頭部分を表示します。
オプション | 説明 | 語源 |
---|---|---|
-c バイト数 | 指定したバイト数をファイルの先頭から表示 | |
-n 行数 | 指定した行数をファイルの先頭から表示 | n は「number(数)」 |
-行数 | ファイルの先頭から表示 |
pasteコマンド
複数のファイルの内容を横に並べて合体(=貼り付け)するコマンドだよ!
英単語の “paste(ペースト)”=貼り付ける という意味から来ているんだ!のりで貼り付ける、つなげる、組み合わせる
正規表現
検索するための方法になります。
grepコマンド
grepコマンドの語源は「global regular ezpressior print」らしいです。古いエディタで使われていたコマンドに由来するそうですよ‼️
ファイルやテキスト内の中から正規表現であらわされる検索文字があるかを調べるコマンドです。
オプション | 語源 |
-c | マッチした行の行数のみ表示 |
-E | 拡張正規表現を使用(egrepコマンドと同様) |
-f | 検索パターンをファイルから読み込む |
-F | 検索パターンを正規表現ではなく、固定文字列とする(fgrepコマンドと同様) |
-i | 大文字と小文字を区別しない |
-n | 先頭に行番号をつけて、マッチした行を表示 |
-v | マッチしなかった行を表示 |
sedコマンド
sed(Stream EDitor)はLinux系でよく使われます。ファイルや標準入力から読み込んだテキストに対してテキストの置換・削除・抽出などをして結果を出力するコマンドです。