
UNIX Cafe | 第12回
はじめに|ファイル整理は“後回し”になりがち
パソコンを使っていると、
いつの間にか 同じようなファイルが増え、どれが最新かわからない 状態になりがちです。
- 古いファイルが残っている
- バックアップが手作業で追いつかない
- 整理しようと思っても時間がない
そんなときに役立つのが、ターミナルとシェルスクリプトによる自動整理 です。
このページでは、
- 必要なファイルを探す
- 条件に合うものだけ移動・コピーする
- フォルダがなければ自動で作る
という一連の流れを、安全第一で紹介します。
ミナちゃんファイルが増えてくると、「あとで整理しよう」って思いながら、
そのままになっちゃいますよね。
find コマンド|条件を指定してファイルを探す
ファイル整理の第一歩は、
「何が、どこに、どれだけあるのか」を知ることです。
find コマンドを使うと、
- 保存場所
- ファイルの種類
- 更新日時
などを条件にして、対象ファイルだけを一覧表示できます。
例:3日以上前に更新されたファイルを探す
find ~/Documents -type f -mtime +3~/Documents:対象フォルダ-type f:通常のファイルのみ-mtime +3:3日より前に更新されたもの
👉 まずは削除や移動をせず、表示だけで確認する のが安全です。
mv と cp|ファイルを安全に整理する
見つけたファイルを整理する方法は、大きく2つあります。
- cp:コピー(元は残る)
- mv:移動(元から消える)
まずはコピーで試す(おすすめ)
find ~/Documents -type f -mtime +3 -exec cp {} ~/backup/ \;- 古いファイルを
backupフォルダへコピー - 元ファイルは残るので安心
💡 慣れるまでは cp → 確認 → mv の順がおすすめです。
dry-run|「何が対象か」を事前に確認する
実際に操作する前に、対象ファイルだけを一覧表示して確認できます。
find ~/Documents -type f -mtime +3 -printこの確認をしておくと、
- 必要なファイルを誤って移動する
- 想定外のファイルまで対象になる
といった事故を防げます。
if文|「なければ作る」を自動化する
スクリプトでは、フォルダが存在しないとエラーになることがあります。
そこで使うのが if文です。
if [ ! -d ~/backup ]; then
mkdir ~/backup
echo "backupフォルダを作成しました!"
fi-d:ディレクトリが存在するか確認!:存在しなければ
👉 事前準備をスクリプトに任せることで、人の操作ミスを防げます。
Try it!|自動お片づけスクリプト
ここまでの内容を組み合わせると、安全なファイル整理スクリプトが完成します。
#!/bin/bash
if [ ! -d ~/backup ]; then
mkdir ~/backup
fi
find ~/Documents -type f -mtime +3 -exec mv {} ~/backup/ \;
echo "☕ 古いファイルを backup に移動しました!"このスクリプトでできること
- backup フォルダがなければ自動作成
- 3日以上前のファイルだけを対象に
- Documents フォルダ内を整理
ページのまとめ|整理は「考え方」が大切
- find:条件を指定して探す
- cp:安全にコピーする
- mv:整理して移動する
- if文:事前準備を自動化する
シェルスクリプトによる整理は、単なる掃除ではなく 「仕組み化」 です。
一度作ってしまえば、毎回同じ手間をかける必要はありません。



一度仕組みを作ってしまえば、あとはスクリプトが
そっと片づけてくれるんですね。
さらに学びたいあなたへ
📘 用途ごとに選ぶ Linux のおすすめ本









