Q1du -sh dataを実行すると何が表示されますか?
システム情報の確認コマンド — du / df / date ほか
この記事は、基礎コマンドからシェルスクリプトまでLinuxの実践的なスキルを1からマスターする「Linux入門講座の一部」です。
du -sh dirでディレクトリの合計サイズ、df -hでディスクの空きと使用率、date +%Y-%m-%dで日付、uname -aでカーネル、whoamiとidでユーザ、seqとexprまで図解と端末で実習します。
ディスクを調べる — du と df
本記事は ①ディスク(du / df)、②日付と時刻(date)、③システムとユーザ(uname / whoami / id)、④連番と計算(seq / expr)の確認コマンドを扱います。
duはディレクトリやファイルの使用容量、dfはディスク全体の空きと使用率を調べるコマンドです。
duは「このディレクトリがどれだけ場所を取っているか」、dfは「ディスク全体にどれだけ空きが残っているか」を見るときに使い分けます。
容量が足りなくなったとき、まず`df -h`で全体を確認し、`du -sh`で大きいディレクトリを探す、という流れがよく使われます。
| 書き方 | 効果 |
|---|---|
du -sh dir | ディレクトリの合計サイズを読みやすい単位で表示 |
df -h | ディスク全体の総量・使用量・空き・使用率を表示 |
du -sh dirは対象ディレクトリの合計サイズ、df -hはディスク全体の空きと使用率を表示します。容量不足のときはdf -hで全体を見てからdu -shで大きいディレクトリを探します。mkdir -p data # 調べる対象を作成
echo 'sample' > data/a.txt # 中身を少し置く
du -sh data # data の合計サイズ(例: 4.0K data)
df -h # ディスク全体の空き一覧
日付と時刻を調べる — date
dateは現在の日時を表示します。
引数なしで実行すると、曜日・月・日・時刻まで含めた既定の形式で出ます。
date +%Y-%m-%dのように+に続けて書式を渡すと、`2026-05-18`のような決まった形で日付だけを取り出せます。`%Y`が 4 桁の年、`%m`が 2 桁の月、`%d`が 2 桁の日です。
ログのファイル名に日付を付けるときなどに使います。
| 書式記号 | 意味 | 例 |
|---|---|---|
%Y | 年(4 桁) | 2026 |
%m | 月(2 桁) | 05 |
%d | 日(2 桁) | 18 |
dateは既定の全表示、date +%Y-%m-%dは%Y年・%m月・%d日の書式どおりに日付だけを取り出します。date # 例: Mon May 18 14:30:05 UTC 2026(既定の全表示)
date +%Y-%m-%d # 例: 2026-05-18(年-月-日だけ)
システムとユーザを調べる — uname / whoami / id
uname -aはカーネル名・バージョン・アーキテクチャなど、動いている OS のシステム情報をまとめて表示します。
whoamiは今コマンドを実行しているユーザ名を表示します。
idはそのユーザのUID(ユーザ番号)と所属グループの GID(グループ番号)を表示し、どの権限で動いているかを確認できます。
スクリプトの中で「誰として動いているか」を判定したいときにも使われます。
| 書き方 | 効果 |
|---|---|
uname -a | カーネル名やバージョンなどシステム情報を表示 |
whoami | 今コマンドを実行しているユーザ名を表示 |
id | ユーザの UID とグループの GID を表示 |
uname -aはシステム(カーネル)側、whoamiは実行ユーザ名、idはそのユーザの UID と GID を表示します。uname -a # カーネル名・バージョン・アーキテクチャなど
whoami # 実行ユーザ名(例: root)
id # 例: uid=0(root) gid=0(root)
連番と計算 — seq と expr
seqは連番を生成します。seq 1 5は 1 から 5 までを 1 行ずつ出力し、繰り返し処理の回数を作るときなどに使います。
seq 2 2 10のように 3 つの数を渡すと、開始・きざみ・終了の順に解釈され 2 から 10 まで 2 きざみで出ます。
exprはコマンドラインで簡単な計算をします。expr 3 + 4は7を出力し、各数値と演算子の間は空白で区切る必要があります。
スクリプトの中で数を数えたり加算したりするのに使われます。
| 書き方 | 効果 |
|---|---|
seq 1 5 | 1 から 5 までの連番を 1 行ずつ生成 |
seq 2 2 10 | 2 から 10 まで 2 きざみ |
expr 3 + 4 | 数値と演算子を空白区切りで計算 |
seqは開始・終了(と任意のきざみ)から連番を作り、exprは空白で区切った数値と演算子を計算します。seq 1 5 # 1 2 3 4 5 を 1 行ずつ
seq 2 2 10 # 2 から 10 まで 2 きざみ
expr 3 + 4 # 7(空白で区切る)
expr 10 - 6 # 4
理解度チェック
まずは1問ずつ答えてみましょう。
Q2date +%Y-%m-%dの出力はどれですか?
Q3expr 3 + 4を実行すると何が出力されますか?