unlink:単一ファイル専用のシンプル削除ツール

目次
unlinkコマンドについての概要と詳細
unlinkとは
unlink
コマンドは、ファイルシステム上の単一ファイルを削除するためのUNIX/Linux標準コマンドです。
基本的にはrm
と同様の役割を果たしますが、対象が1つのファイルに限定されており、ディレクトリや複数ファイルを扱うことはできません。
内部的には「リンクを切断する」操作であり、ハードリンクを含むファイルエントリを削除します。ただし、通常ユーザーにとっては「ファイル削除コマンド」として使用されます。
主な特徴
- シンプルなインターフェース:引数は1つのファイル名のみ
- ハードリンクの解除:参照が1つもなくなるとファイル内容が消える
- rmとの違い:unlinkは1ファイル専用、rmは複数ファイルやディレクトリも削除可能
- スクリプトや安全な削除処理に便利
インストール方法
多くのLinuxディストリビューションでは、unlink
は標準でインストールされています。
GNU Coreutilsに含まれているため、以下のコマンドで導入可能です(通常は不要)。
Debian/Ubuntu系
$ sudo apt install coreutils
Fedora系
$ sudo dnf install coreutils
基本的な使い方
ファイルを削除する
$ unlink filename.txt
指定されたfilename.txt
というファイルが削除されます。
リンクが1つしかない場合、ファイルの内容も削除されます。
エラー例(複数引数)
$ unlink file1 file2
unlink: extra operand ‘file2’
複数のファイルを指定するとエラーになります。
エラー例(ディレクトリ)
$ unlink mydir
unlink: cannot unlink ‘mydir’: Is a directory
ディレクトリは削除できません(rm -r
が必要です)。
unlinkとrmの比較
機能 | unlink | rm |
---|---|---|
単一ファイルの削除 | ○ | ○ |
複数ファイル削除 | × | ○ |
ディレクトリ削除 | × | ○(-rオプション) |
インタラクティブ操作 | × | ○(-iオプション) |
初心者向け | △ | ◎ |
unlinkの実用場面
- スクリプトで1ファイルのみを確実に削除したいとき
- 安全に特定のファイルだけを対象にする処理に
- 複数のハードリンクが存在するファイルの一部リンクを切りたいとき
まとめ
unlink
は非常にシンプルながらも、Linuxのファイル管理において基礎的かつ重要な役割を担うコマンドです。
多機能なrm
に比べて制限はあるものの、単一ファイルの削除や安全なスクリプト実行環境での利用に適しており、ファイルのリンクと実体の関係を理解するためにも役立ちます。