LPIC-1 試験勉強メモ その 2

LPIC-1 試験勉強メモ その 2

正規表現

正規表現で使える特殊文字

記号説明
.任意の文字
^行の先頭
$行の末尾
*直前の文字が 0 回以上の繰り返し
?直前の文字が 0 回もしくは 1 回の繰り返し
+直前の文字が 1 回以上の繰り返し
[][] 内の文字グループと一致

pgrep コマンド

現在実行中のプロセスからユーザー名、UID、GID で検索する。

pgrep [オプション] [パターン]

  • -t 端末:指定した端末で実行されているプロセス ID を検索する。検索対象は複数指定可能。
  • -u euid:指定した実効ユーザー ID に該当するプロセス ID を検索する。検索対象は複数指定可能。
  • -U uid:指定した実ユーザー ID に該当するプロセス ID を検索する。検索対象は複数指定可能。
実ユーザー ID と実効ユーザー ID
  • 実ユーザー ID (real UID):プログラムを起動したユーザー、プロセスの所有者
  • 実効ユーザー ID (effective UID):プログラムが起動するときの権限

vi

基本概要

3 つのモードが存在。

  • コマンドモード:vi コマンドを処理する。[Esc] で入力モードから切り替わる。
  • 入力モード:テキストデータを入力する。
  • ex モード:文書の保存や検索、置換を行う。

コマンドモード

画面表示系

コマンド説明
[ctrl] + l上にスクロール
[ctrl] + f下にスクロール
h, ←カーソルを左に 1 文字移動
j, ↓カーソルを下に 1 文字移動
k, ↑カーソルを上に 1 文字移動
l, →カーソルを右に 1 文字移動
0現在の行の先頭に移動
$現在の行の末尾に移動
1G1 行目へ移動
n Gn 行目へ移動
/ 文字列カーソル位置から末尾に向かって検索
? 文字列カーソル位置から先頭に向かって検索
n次を検索
N前を検索

文字操作系

コマンド説明
xカーソル上の 1 文字を削除
dwカーソルから次の単語を 1 単語削除
ddカーソル行を削除
n xカーソルから右に n 文字削除
Dカーソルから行の最後まで削除
n ddカーソルから n 行削除
dGカーソルから最終行まで削除
dH画面の 1 行目からカーソル行まで削除
yyカーソル行をコピー
yw単語のコピー
Pカーソル行の上の行に貼り付け
pカーソル行の下の行に貼り付け
u最後の編集の取り消し
.最後の編集の繰り返し

入力モード

切り替えコマンド

コマンド説明
iカーソルの前に文字を挿入
aカーソルの後に文字を挿入
oカーソル行の下に新しい行を作成し、先頭から挿入
Iカーソル行の先頭に文字を挿入
Aカーソル行の末尾に文字を挿入
Oカーソル行の上に新しい行を作成し、先頭から挿入

ex モード

保存操作系

コマンド説明
:w上書き保存
:w!強制上書き保存
:w ファイル名別名保存
:q保存せず終了
:q!強制で保存せず終了
:wq保存して終了
ZZ保存して終了
:wq!強制で保存して終了
:wq ファイル名別名で保存して終了
:! コマンドコマンドを実行
:e!編集内容を破棄してファイルを再読み込み
:set オプションオプション機能を有効化
:set no オプションオプション機能を無効化
オプション
オプション説明
number行番号を表示
ignorecase大文字小文字を区別しない
listタブや行末文字など通常表示されない文字を表示
allすべてのオプションを表示

ホームディレクトリに .exrc ファイルを作成することでオプション指定可能。

プロセス管理

プロセスを表示するコマンド

  • ps:プロセスの情報を表示する基本的コマンド
  • pstree:プロセスの階層構造を表示するコマンド
  • top:プロセスの情報を周期的にリアルタイムに表示するコマンド

一番最初に起動するプロセス

どちらともプロセス ID は 1 となる。

  • CentOS 6.X:SysV init
  • CentOS 7.X:systemd
ps コマンドのオプション種類
  • UNIX オプション: – を指定する。
  • BSD オプション: – を指定しない。
  • GNU オプション: — を指定する。
オプション種類オプション説明
UNIX-eすべてのプロセスを表示する
UNIX-f詳細情報を表示する
UNIX-l長いフォーマットで詳細情報を表示する
UNIX-oユーザー定義のフォーマットで表示する
BSDaすべてのプロセスを表示する
BSDu詳細情報を表示する
BSDx制御ターミナルの無いプロセスも表示する
表示項目
  • PID:プロセス ID
  • TTY:制御しているターミナル
  • TIME:実効時間
  • CMD:コマンド (実行ファイル名)
  • NI:優先度

top コマンド

CPU 使用率の高い順に表示する。

  • -d 秒数:更新の間隔を秒単位で指定
  • -n 数値:表示の回数を数値で指定

free コマンド

システムの空きメモリと利用メモリの量を表示する。

pstree コマンド

プロセスの親子関係を表示する。

  • -h:カレントプロセスとその先祖プロセスを強調表示
  • -H PID:指定したプロセスとその先祖プロセスを強調表示
  • -P:プロセス ID をつけて表示

優先度

nice コマンド

指定した数値の優先度を付与する。デフォルトは +10 となる。

nice [オプション] [コマンド]

  • -n:優先度を指定 (-20 ~ 19)
  • 動的優先度:CPU 使用時間をもとに計算される。
  • 静的優先度:nice コマンドで指定する。

renice コマンド

実行中のプロセスの優先度を変更する。

renice [オプション]

  • -p:PID を指定する。

ジョブ

  • フォアグラウンドジョブ:キーボードと画面を占有するジョブ
  • バックグラウンドジョブ:入力を受け取れないジョブ

jobs

バックグラウンドジョブと一時停止中のジョブを表示する。 [ctrl] + Z でジョブを一時停止する。

  • bg %ジョブ ID:バックグラウンドへ移行する
  • fg %ジョブ ID:フォアグラウンドへ移行する

nohup コマンド

ログアウトしてもコマンドを実行し続ける。

nohup コマンド [引数]

uptime コマンド

システム化稼働している期間を表示する。

主なシグナル

シグナル番号シグナル名説明
1SIGHUPタームなるの切断によるプロセスの終了
2SIGINT割り込みによるプロセスの終了
9SIGKIILLプロセスの強制終了
15SIGTERMプロセスの通常終了
18SIGCONT一時停止したプロセスを再開する
20SIGTSTPプロセスの一時停止

kill コマンド

指定したジョブを終了する。

kill [オプション] [シグナル名 | シグナル番号] プロセス ID
kill [オプション] [シグナル名 | シグナル番号] %ジョブ ID
killall [オプション] [シグナル名 | シグナル番号] プロセス名
pkill [オプション] [シグナル名 | シグナル番号] プロセス名

watch コマンド

指定したコマンドを繰り返し実行する。

watch コマンド

  • -nm –internal:間隔指定

tmux コマンド

1 つの物理画面から多数のターミナルを制御する。

  • セッション:tmux の管理下にある仮想端末の集合
  • ウィンドウ:セッション内で管理される仮想ウィンドウ
  • デタッチ:セッションから切断
  • アタッチ:デタッチしたセッションに再接続
  • プレフィックスキー:ctrl + b で指示を出す