Open6
【CLI Tips】LinuxコマンドTips📝

topコマンド:CPU使用率/プロセスなどを調べるコマンド
top
コマンドは、Unix系システム(Linux、macOSなど)で使用されるコマンドラインツールで、システムのプロセスやリソース使用状況をリアルタイムで監視します。実行中のプロセスのリストを表示し、CPU使用率、メモリ使用量、実行時間、ユーザー、プロセスID(PID)などの情報を提供します。
主な特徴
- リアルタイム更新: デフォルトで数秒ごとに画面が更新され、最新のシステム状態を確認可能。
-
対話型インターフェース: キーボードショートカット(例:
q
で終了、k
でプロセス終了)で操作可能。 - リソース監視: CPU、メモリ、スワップ使用量、タスクの状態(実行中、スリープ中など)を表示。
-
カスタマイズ可能: 表示項目やソート順を変更可能(例:
f
でフィールド管理)。
基本的な使い方
top
- 実行後、端末に表形式でプロセス情報が表示される。
- 終了するには
q
を押す。
主な表示項目
- PID: プロセスのID。
- USER: プロセスを実行しているユーザー。
- %CPU: CPU使用率。
- %MEM: メモリ使用率。
- TIME+: プロセスが開始してからの累積実行時間。
- COMMAND: 実行中のコマンド名。
よく使うオプション
-
-u <ユーザー名>
: 特定ユーザーのプロセスのみを表示。 -
-p <PID>
: 特定のプロセスIDを監視。 -
-n <回数>
: 指定した回数だけ更新して終了。
例:
top -u myuser # myuserのプロセスのみを表示
類似ツール
-
htop
: より視覚的で使いやすい代替ツール。 -
ps
: 静的なプロセス情報を表示。 -
glances
: システム全体のリソース監視。
システム管理やパフォーマンス監視で非常に役立つツールです。詳細はman top
で確認できます。

ファイル/ディレクトリ操作系
ファイル削除
rm ファイル名
ディレクトリを強制削除する📝
rm -rf ディレクトリ名
ファイルのCopy
- 単一のファイルをコピーする場合
cp /Users/userName/.ssh/id_rsa.pub /Users/userName/Desktop
- ディレクトリ内のファイルをすべてコピーする場合
cp -r /Users/userName/.ssh/* /Users/userName/Desktop

whichコマンドで installしたライブラリの場所を探す📝
which node
# 結果
/usr/local/bin/node

treeコマンド📝

source コマンド📝
source コマンドとは?
source
は POSIX シェル系(bash, zsh など)に備わる組み込みコマンド で、
指定したファイルの中身を「現在のシェルプロセス」上で順番に実行します。
その結果、ファイル内で定義・変更された 環境変数・シェル変数・関数・エイリアスなどが、そのまま呼び出し元のシェルに残る のが最大の特徴です。
基本構文
source ファイル名 # bash / zsh
. ファイル名 # POSIX 互換(ドットコマンド)
-
source
と.
(ドット)は同義ですが、POSIX 標準に含まれるのはドットの方です。
したがって sh や dash など最小限のシェル環境では.
を使う必要があります。
何が嬉しいのか?(主な用途)
典型シーン | 具体例 |
---|---|
設定の再読み込み |
. ~/.bashrc – 端末を開き直さずに .bashrc の変更を即反映 |
環境変数のまとめ読み込み |
source ./env/dev.env – プロジェクトごとに複数の変数を一括でセット |
シェル関数/エイリアスのライブラリ化 |
. scripts/git-aliases.sh – よく使う関数群を共有 |
仮想環境・SDK の切り替え |
source venv/bin/activate 、source ~/.nvm/nvm.sh
|
プロセス置換と組み合わせるワンライナー |
source <(kubectl completion bash) – 補完スクリプトをその場で読込 |
「実行」じゃダメなの?
-
./script.sh
やsh script.sh
は 子プロセスを起動します。
その子プロセス内で変えた変数は 親シェルには伝わりません。 -
「設定を現在のシェルに反映させたい」場合は
source
が必須です。
$ cat setenv.sh
export FOO=bar
$ sh setenv.sh # 子プロセスで実行
$ echo $FOO # 何も出力されない
$ source setenv.sh # 現在のシェルで実行
$ echo $FOO
bar
小技・注意点
-
戻り値
-
source
したスクリプトがexit 1
などで終了すると、source
自体もその終了ステータスを返します。
例えばif source config.sh; then ... fi
のように条件分岐に利用可能。
-
-
安全対策
- 誰かの書いたスクリプトを安易に
source
すると、現在のシェルが汚染・破壊されるリスクがあります。
パスや権限に注意し、内容を確認してから読み込みましょう。
- 誰かの書いたスクリプトを安易に
-
zsh の補足
- zsh では
source
・.
に加えてautoload
(関数の遅延読み込み)など独自機能もあります。
- zsh では
-
fish シェル
- fish には独自構文が多く、
source
の動きもやや異なります(. filename
は使えません)。
- fish には独自構文が多く、
まとめ
- source / . = 「ファイルを読み取って現在のシェルで一行ずつ実行」コマンド
- 設定や環境を即反映したいときの定番手段
- 子プロセスを作らないので、変数・関数が呼び出し元に残る
- POSIX ポータビリティを意識するなら ドット記法 (
. ファイル名
) を覚えておくと安心
これさえ押さえれば、.bashrc
再読み込みも仮想環境の有効化もスムーズに行えます。

ディレクトリ/ファイルの権限変更: chmodコマンド📝
再帰的にread/write/delete権限を与える📝
chmod -R 777 .