The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Linuxを日常的に使いこなすうえで、作業効率を大きく左右するのがコマンドラインの扱いです。GUIでも多くの操作は可能ですが、ファイル検索、ログ確認、同期、プロセス監視、容量確認といった実務では、端末から素早く正確に操作できることが強みになります。
特にパワーユーザーほど、毎回複雑な操作をしているわけではなく、信頼できる基本コマンドを状況に応じて組み合わせています。find、grep、rsync、top/htop、du/df、historyは、日常作業の時間短縮とトラブル対応の精度向上に直結する代表的なコマンドです。
As an Amazon Associate I earn from qualifying purchases.
find:目的のファイルを高速に探す
findは、Linuxでファイルやディレクトリを条件指定して探すための定番コマンドです。GUIの検索機能と違い、名前、種類、更新日時、サイズ、所有者、権限などを組み合わせて絞り込めるため、ログ調査、設定ファイル確認、不要ファイル整理、バックアップ対象の抽出といった日常作業で頻繁に使われます。基本構文はfind 検索開始位置 条件 アクションです。たとえば、ホームディレクトリ配下から名前にconfigを含むファイルを探すなら、find ~/ -name "*config*"のように実行します。
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
もっともよく使う条件は、ファイル名を指定する-nameと、大文字小文字を区別しない-inameです。種類で絞り込む場合は、通常ファイルなら-type f、ディレクトリなら-type dを指定します。たとえば、/etc配下から拡張子が.confの通常ファイルだけを探すには、find /etc -type f -name "*.conf"を使います。権限不足のエラーが多く出る環境では、標準エラーを捨てる2>/dev/nullを付けると、検索結果だけを見やすくできます。
実務で使いやすい検索例
- 直近で変更されたファイルを探す:
find . -type f -mtime -1は、現在のディレクトリ配下で24時間以内に更新されたファイルを表示します。障害対応時に、変更された設定や生成されたログを追うときに便利です。 - 大きいファイルを探す:
find /var -type f -size +500Mは、/var配下で500MBを超えるファイルを探します。ディスク使用量が急増したとき、肥大化したログや一時ファイルを見つけるのに役立ちます。 - 空のディレクトリを探す:
find . -type d -emptyは、空ディレクトリを一覧表示します。プロジェクト整理や不要な生成物の確認に使えます。 - 特定ユーザー所有のファイルを探す:
find /srv -user deployは、deployユーザーが所有するファイルやディレクトリを抽出します。権限設計や移行作業の確認に向いています。
findの強力な点は、検索結果に対してそのまま処理を実行できることです。たとえば、7日以上前の一時ファイルを確認するならfind /tmp -type f -mtime +7 -print、削除まで行うならfind /tmp -type f -mtime +7 -deleteです。削除系の操作では、いきなり-deleteを付けず、まず-printで対象を確認してから実行すると安全です。大量のファイルを処理する場合は、-execもよく使います。例として、拡張子.logのファイルをgzip圧縮するには、find ./logs -type f -name "*.log" -exec gzip {} \;のように書きます。
検索範囲を適切に絞ることも、速度と安全性の面で大切です。システム全体を対象にするfind /は強力ですが、時間がかかり、権限エラーも多くなります。設定ファイルなら/etc、ログなら/var/log、アプリケーションデータなら対象ディレクトリ配下というように、開始位置を具体的に指定すると結果が読みやすくなります。さらに、深さを制限する-maxdepthを使えば、不要な下位階層まで検索せずに済みます。たとえば、カレントディレクトリ直下のディレクトリだけを見たい場合はfind . -maxdepth 1 -type dとします。日常的に使い慣れると、ファイルマネージャを開くより早く目的の場所へ到達できます。
grep:ログや設定ファイルから必要な情報を抽出する
grepは、テキストファイルやコマンド出力から、指定した文字列やパターンを含む行を取り出すためのコマンドです。Linuxの日常運用では、アプリケーションログ、システムログ、設定ファイル、スクリプト、コマンドの実行結果などを確認する場面が多くあります。膨大な行数の中からエラー、IPアドレス、ユーザー名、設定項目だけを素早く見つけたいとき、grepは非常に強力です。
基本構文はシンプルで、grep 検索パターン ファイル名の形で使います。たとえば、認証ログから失敗したログインを探す場合は、grep "Failed password" /var/log/auth.logのように実行します。大文字小文字を区別せずに探したい場合は-i、行番号を表示したい場合は-n、検索対象を再帰的にたどりたい場合は-rを付けます。設定ファイルの場所が分からないときは、grep -rn "Listen" /etcのようにして、/etc配下から該当する設定を探せます。
実務でよく使うオプション
-i:大文字小文字を無視して検索する。error、Error、ERRORをまとめて拾いたいときに便利です。-n:一致した行の行番号を表示する。設定ファイルやソースコードを編集するとき、該当箇所へ移動しやすくなります。-r:ディレクトリ配下を再帰的に検索する。複数の設定ファイルやログをまとめて調べる場合に使います。-v:一致しない行を表示する。コメント行や不要な項目を除外して確認したいときに役立ちます。-E:拡張正規表現を使う。複数パターンや少し複雑な条件を指定したい場合に有効です。
ログ調査では、grepをパイプと組み合わせる使い方が定番です。たとえば、journalctl -u nginx | grep -i errorとすれば、nginx関連のログからエラーらしき行だけを抽出できます。さらにgrepを重ねて、journalctl -u nginx | grep -i error | grep "502"のようにすると、エラーの中でもHTTP 502に関係する行だけを絞り込めます。アクセスログで特定のIPアドレスを確認するなら、grep "192.168.1.10" /var/log/nginx/access.logのように指定します。
設定ファイルを読むときは、コメントや空行を除外すると内容を把握しやすくなります。たとえば、grep -v "^#" /etc/ssh/sshd_config | grep -v "^$"とすれば、コメント行と空行を取り除いた状態でSSH設定を確認できます。複数のキーワードを一度に探すなら、grep -E "error|failed|timeout" app.logのように指定します。運用中の調査では、tail -f app.log | grep --line-buffered "ERROR"のようにリアルタイム監視へ組み込む使い方も実用的です。grepを使い慣れると、ログ確認や設定確認にかかる時間を大きく短縮できます。
Rank #2
rsync:安全かつ効率的にファイルを同期する
rsyncは、ローカル間やSSH越しのリモート環境との間でファイルを同期するための定番コマンドです。単純なコピーならcpやscpでもできますが、rsyncは差分だけを転送できるため、バックアップ、デプロイ、ログ退避、作業ディレクトリの複製といった日常作業で非常に効率的です。大量のファイルを扱う場合や、同じ転送を繰り返す場合ほど効果が大きくなります。
基本構文はrsync [オプション] コピー元 コピー先です。よく使う組み合わせは-a、-v、-hで、まとめて-avhと指定します。-aはアーカイブモードで、パーミッション、タイムスタンプ、シンボリックリンクなどをできるだけ保持します。-vは転送内容を表示し、-hはサイズを人間が読みやすい単位で表示します。
ローカルディレクトリを同期する
作業ディレクトリを別の場所へ同期する例は次の通りです。末尾のスラッシュの有無で挙動が変わるため、実務では特に意識して使います。
rsync -avh ~/project/ /backup/project/:projectディレクトリの中身を/backup/project/へ同期するrsync -avh ~/project /backup/:projectディレクトリ自体を/backup/配下へコピーする
同期先から不要になったファイルも削除し、コピー元と完全に揃えたい場合は--deleteを追加します。たとえばrsync -avh --delete ~/project/ /backup/project/のように使います。ただし、同期先のファイルが削除されるため、最初は--dry-runを付けて実行内容だけ確認するのが安全です。rsync -avh --delete --dry-run ~/project/ /backup/project/とすれば、実際の変更を行わずに差分を確認できます。
SSH越しにリモートへ転送する
サーバーへファイルを送る場合もrsyncは便利です。SSHを使う構文はユーザー名@ホスト名:パスを指定します。たとえば、ローカルの公開ディレクトリをWebサーバーへ同期するなら、rsync -avh ./public/ [email protected]:/var/www/example/のように実行します。逆に、サーバー上のログを手元へ取得する場合は、rsync -avh [email protected]:/var/log/nginx/ ./nginx-logs/のようにコピー元へリモートパスを指定します。
| オプション | 用途 |
|---|---|
-a |
属性を保ちながら再帰的に同期する |
-v |
転送されるファイルを表示する |
-h |
ファイルサイズを読みやすく表示する |
--delete |
コピー元に存在しないファイルを同期先から削除する |
--dry-run |
実際には変更せず、実行予定の内容だけ確認する |
--exclude |
特定のファイルやディレクトリを除外する |
実務では、キャッシュや一時ファイルを除外したい場面も多くあります。たとえばrsync -avh --exclude 'node_modules/' --exclude '.git/' ./app/ backup:/srv/app/とすれば、巨大な依存パッケージやGit管理情報を転送対象から外せます。さらに、定期バックアップではcronと組み合わせ、--dry-runで検証してから本番投入すると、意図しない削除や過剰な転送を避けやすくなります。rsyncは高速なだけでなく、確認しながら安全に同期できる点が、パワーユーザーの日常作業に向いています。
Rank #3
- Latest Bluetooth 6.0 with Bluetooth Low Energy (BLE) for energy-saving wireless connectivity
- Multi-device connection (up to 7) to engage all your Bluetooth devices
- Ultra-small design for unmatched portability
- Backward compatible with previous Bluetooth versions
- OS Support: Windows 10/11, Linux
top/htop:システム負荷とプロセスを把握する
topとhtopは、CPU使用率、メモリ使用量、ロードアベレージ、実行中プロセスをリアルタイムに確認するための定番コマンドです。サーバーが重い、SSHの反応が遅い、バッチ処理が終わらない、といった場面では、まずこの2つで「どのプロセスが資源を使っているか」を把握します。topは多くのLinux環境に標準で入っており、htopは見やすい画面と操作性に優れた代替ツールとしてよく使われます。
基本的な使い方はシンプルです。端末でtopを実行すると、上部にシステム全体の状態、下部にプロセス一覧が表示されます。CPUを多く使っているプロセスを見たい場合は、標準状態でも%CPU順に並ぶことが多く、Mキーでメモリ使用量順、PキーでCPU使用率順、qキーで終了できます。特定ユーザーのプロセスだけを見たい場合は、top -u deployのように指定します。
topでよく使う操作
- P:CPU使用率順に並べ替える
- M:メモリ使用量順に並べ替える
- k:PIDを指定してプロセスへシグナルを送る
- 1:CPUコアごとの使用状況を表示する
- c:コマンドライン全体の表示を切り替える
- q:topを終了する
実務では、topの上部に表示されるロードアベレージとCPU待ち状態も確認します。たとえばロードアベレージがCPUコア数を大きく超えている場合、処理待ちが発生している可能性があります。また、CPU欄のwaが高い場合は、CPUそのものではなくディスクI/O待ちが原因で遅くなっていることがあります。単にCPU使用率だけを見るのではなく、メモリ不足、スワップ使用、I/O待ちを合わせて見ることで、原因の切り分けがしやすくなります。
htopは、より直感的にプロセスを確認したいときに便利です。未導入の場合は、Debian/Ubuntu系ならsudo apt install htop、RHEL/Fedora系ならsudo dnf install htopなどで追加します。起動はhtopだけです。画面上部にCPUコア別の使用率、メモリ、スワップがバーで表示され、下部にはプロセス一覧が色付きで並びます。矢印キーでプロセスを選び、F6で並べ替え、F9で終了シグナルを送れます。
トラブル対応での実践例
| 状況 | 確認する項目 | 使う操作 |
|---|---|---|
| CPU使用率が高い | %CPU、実行コマンド、PID |
topでP、またはhtopでCPU順に並べ替え |
| メモリ不足が疑われる | %MEM、RES、スワップ使用量 |
topでM、またはhtopのメモリバーを確認 |
| 特定ユーザーの処理が重い | ユーザー名、プロセス数、コマンド内容 | top -u ユーザー名を実行 |
| 誤って暴走した処理を止めたい | PID、親子関係、終了対象 | htopで選択してF9、またはtopでk |
プロセスを終了する際は、いきなり強制終了のSIGKILLを使うのではなく、まず通常終了のSIGTERMを送るのが安全です。データベース、Webサーバー、ジョブキューなどは、強制終了によって処理中データやロックファイルが残ることがあります。PIDだけで判断せず、cキーやhtopの詳細表示でコマンドラインを確認し、必要ならpsやログも併用してから対応すると、日常運用での事故を減らせます。
du/df:ディスク使用量と空き容量を確認する
Linuxを日常的に使っていると、「どのディレクトリが容量を食っているのか」「ファイルシステム全体に空きがあるのか」を素早く確認したい場面が頻繁にあります。そこで使うのがduとdfです。duはディレクトリやファイル単位の使用量を調べるコマンド、dfはマウントされているファイルシステム単位の空き容量を確認するコマンドです。ログが肥大化したとき、バックアップ前に空き容量を見たいとき、コンテナや仮想環境でディスク不足を疑うときに欠かせません。
Rank #4
- Just plug Panda PAU0F into your laptop or desktop to unlock the dedicated WiFi 6E (6GHz) frequency band for low latency and high data throughput with any WiFi 6E router.
- Locate the most robust WiFi connection and optimal signal range using the dual adjustable antennas.
- Use Panda PAU0F on Windows 11 (not Windows 10) or Linux to connect to any WiFi 6E router in 6GHz frequency band.
- Supports the WEP, WPA, WPA2, WPA3 WiFi security standards.
- If you want to use Panda Wireless PAU0F with a guest OS VM in a Virtual Machine, please contact Panda Wireless for more info.
まずdfは、システム全体の空き状況を見る入口として使います。基本形はdf -hです。-hを付けると、容量がKB、MB、GBなど人間が読みやすい単位で表示されます。出力にはファイルシステム名、総容量、使用済み容量、空き容量、使用率、マウントポイントが並びます。たとえばルートパーティションの使用率を確認したい場合は、df -h /のように対象を指定します。特定のディレクトリを指定しても、そのディレクトリが属するファイルシステムの容量が表示されるため、作業場所の空き確認に便利です。
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →dfでよく使う確認パターン
- 全体の空き容量を見る:
df -h - ファイルシステム種別も表示する:
df -hT - inodeの枯渇を確認する:
df -i - 特定パスの所属先を確認する:
df -h /var/log
容量に余裕があるのにファイルを作成できない場合は、inode不足を疑います。inodeはファイルやディレクトリの管理情報で、小さなファイルが大量にある環境ではディスク容量より先に枯渇することがあります。その確認に使うのがdf -iです。メールスプール、キャッシュディレクトリ、セッションファイル保存先などでは特に有効です。
一方、どのディレクトリが容量を使っているかを掘り下げるにはduを使います。基本はdu -sh 対象です。-sは合計のみ、-hは読みやすい単位で表示する指定です。たとえばdu -sh /var/logなら、ログディレクトリ全体の使用量をすぐ確認できます。さらに、直下のディレクトリごとの使用量を見たい場合はdu -h --max-depth=1 /varを使います。これにより、/var配下でlog、cache、libなどのどこが大きいかを比較できます。
容量調査で役立つduの実践例
- カレントディレクトリ直下を容量順に並べる:
du -sh ./* | sort -h - 大きい順に確認する:
du -sh ./* | sort -hr | head - /var配下を1階層だけ調査する:
du -h --max-depth=1 /var | sort -hr - ログファイルだけを探す:
du -ah /var/log | sort -hr | head -20
実務では、まずdf -hでどのマウントポイントが逼迫しているかを確認し、次にその配下でdu -h --max-depth=1を実行して原因を絞り込む流れが効率的です。たとえば/が90%を超えているなら、du -h --max-depth=1 / | sort -hrで大きなディレクトリを探し、さらに/varや/homeへ降りて調査します。削除前には、対象がログ、キャッシュ、一時ファイル、バックアップのどれなのかを必ず確認し、サービスが使用中のファイルを不用意に消さないようにします。duとdfを組み合わせることで、ディスク不足の原因調査から安全な整理までを短時間で進められます。
history:過去のコマンドを再利用して作業を短縮する
historyは、過去に実行したコマンドを一覧表示し、同じ操作や似た操作を素早く再実行するためのコマンドです。Linuxで日常的に作業していると、長いオプション付きのfind、複雑なgrep、特定ディレクトリへのrsyncなど、毎回手で入力するには面倒なコマンドが増えていきます。そうした入力履歴を活用すれば、入力ミスを減らしながら作業時間を短縮できます。
Do these 3 things before closing this tab:
1Scan for outdated or missing drivers - takes under a minute2Clear out junk files and repair common Windows errors3Fix the driver behind crashes, sound loss and screen glitches基本構文は単純で、historyと入力するだけです。多くのシェルでは、行番号付きで過去のコマンドが表示されます。件数を絞りたい場合はhistory 20のように指定すると、直近20件だけを確認できます。履歴から目的のコマンドを探す場合は、history | grep sshやhistory | grep rsyncのようにgrepと組み合わせると効率的です。
Best Value
- USB Wi-Fi Adapter: Upgrade your Wi-Fi speeds up to 150 Mbps for lag free video streaming and Internet calls
- Stronger Wi Fi Coverage: 2.4GHz band Wi Fi covers your house everywhere
- Mini Design: allows you to plug it in and forget it is even there; Wireless modes ad hoc/ infrastructure mode; Wireless security supports 64/128 WEP, WPA/WPA2, WPA psk/WPA2 psk (TKIP/AES), supports IEEE 802.1x
- Industry leading support: 2 Year and Free 24/7 technical support
- Compatibility: Compatible with Windows (XP/7/8/8.1/10/11) Mac OS (10.9 - 10.15) Linux Kernel (2.6.18 - 4.4.3)
よく使う操作例
- 直前のコマンドを再実行:
!!を使うと、直前に実行したコマンドをそのまま再実行できます。たとえば、権限不足で失敗した直後にsudo !!と入力すれば、直前のコマンドにsudoを付けて実行できます。 - 履歴番号で再実行:
historyで表示された番号が1240なら、!1240でそのコマンドを再実行できます。長いバックアップコマンドや検証コマンドを呼び戻す際に便利です。 - キーワードで再実行:
!sshのように入力すると、直近でsshから始まるコマンドを実行できます。接続先が決まっているサーバーに何度もログインする場面で役立ちます。 - 履歴を検索:多くの端末では
Ctrl + rで逆方向検索ができます。文字を数文字入力するだけで一致する過去コマンドが表示され、Enterで実行、矢印キーで編集できます。
実務では、履歴をそのまま実行するだけでなく、呼び出してから一部を編集する使い方が安全です。たとえば、rsync -av --delete ./site/ user@example:/var/www/site/のようなコマンドを再利用する場合、同期元と同期先を確認してから実行するほうが事故を防げます。特にrm、mv、rsync --delete、本番サーバーへの操作は、履歴番号で即実行するより、検索して編集してから実行する運用が適しています。
| 操作 | コマンド例 | 用途 |
|---|---|---|
| 履歴一覧を表示 | history |
過去に実行したコマンドを確認する |
| 直近だけ表示 | history 30 |
最近の作業内容を短時間で振り返る |
| 履歴を検索 | history | grep docker |
特定ツールや処理に関するコマンドを探す |
| 直前をsudo付きで実行 | sudo !! |
権限不足で失敗したコマンドを再実行する |
履歴には接続先、ファイルパス、場合によってはトークンやパスワードが残ることがあります。機密情報を誤って入力した場合は、history -d 番号で該当行を削除し、必要に応じて履歴ファイルも確認します。historyは単なる記録ではなく、検索、再利用、編集を組み合わせることで、日常作業の速度と再現性を高める実用的な作業ログになります。
Frequently Asked Questions
findとgrepはどう使い分ければいいですか?
findは「どのファイルがあるか」を探すコマンドで、ファイル名、更新日時、サイズ、権限などを条件に検索できます。grepは「ファイルの中に何が書かれているか」を探すコマンドで、ログや設定ファイル内の文字列検索に向いています。たとえば「名前にnginxを含むファイル」を探すならfind、「errorという行」を探すならgrepを使います。
Recommended Free Tools
rsyncでファイルを同期するとき、削除事故を防ぐにはどうすればいいですか?
本番実行の前に必ず--dry-runを付けて、実際に何がコピー・削除されるかを確認するのが安全です。特に--deleteは同期元にないファイルを同期先から削除するため、指定先を間違えると大きな事故につながります。パス末尾のスラッシュ有無でも挙動が変わるため、テスト用ディレクトリで確認してから使うと安心です。
topとhtopのどちらを使えばいいですか?
topは多くのLinux環境に標準で入っているため、サーバーに追加インストールできない場面でも使いやすいです。htopは表示が見やすく、CPUコアごとの負荷やメモリ使用量を直感的に確認でき、プロセスの検索や終了操作もしやすいです。日常作業ではhtop、最小構成のサーバーや緊急時にはtopを使えるようにしておくと実用的です。
duとdfの表示結果が違うのはなぜですか?
dfはファイルシステム全体の空き容量や使用率を表示し、duは指定したディレクトリ配下の実ファイル容量を集計します。そのため、削除済みでもプロセスがまだ掴んでいるログファイルや、マウントポイントの違いによって数値が一致しないことがあります。ディスク逼迫の調査では、まずdfで対象パーティションを確認し、次にduで容量の大きいディレクトリを絞り込む流れが効率的です。
historyを安全に活用するには何に気をつけるべきですか?
historyは過去に実行した長いコマンドを再利用できるため便利ですが、パスワードやトークンを含むコマンドを残さないよう注意が必要です。誤実行を避けるには、history | grep キーワードで内容を確認してからコピーして使う方法が安全です。頻繁に使う操作は履歴に頼るだけでなく、エイリアスやシェルスクリプト化するとさらに作業を短縮できます。
Bottom Line
Linuxを日常的に使いこなすなら、ファイル操作、検索、プロセス確認、ディスク使用量の把握、ネットワーク確認、履歴活用に関わる基本コマンドを素早く扱えることが大きな差になります。今回紹介したコマンドはどれも実務で出番が多く、覚えるほど作業の確認・修正・自動化が速くなります。
まずは自分のよく使う作業に合わせて、オプションやパイプとの組み合わせを少しずつ試してみてください。手を動かしながら定番パターンを身につければ、Linux環境での作業効率は確実に上がります。
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

