- ベストアンサー
"unlink"と"rm"コマンドの使い分け方法
現在、NetBSDで開発をしているのですが、 "unlink"と"rm"の使い分けの方法がわかりません。 rmの中に"unlink"が入っていることは、わかったのですが、それならば、"unlink"だけを使えばファイルの削除ができるのでしょうか? 使い方の基準は、何なのでしょうか? ご教授よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
unlinkはlinkの逆操作で、特定条件でrmと同じような動作をすることもありますが、 異なる動作をします。 通常ファイルを削除したい場合はrmを使ってください。 多分unixで通常使うファイルシステムについて判っていないと、 unlinkを使う意味は判らないと思いますし、 知らないならおそらく使う必要もないでしょう。
その他の回答 (3)
- shige_70
- ベストアンサー率17% (168/946)
Solarisでunlink(1M)を読むと、rmやrmdirを使用することを強く推奨する、ということが書いてあります。 NetBSDでも同じことが書いてあるかどうかは知らないのですが、考え方は同じでしょう。 ですので、通常はrmのほうを使用してください。 ちなみにCなどで開発する場合も、unlink()かremove()か、という議論が出来ると思いますがやはりremove()が推奨されるでしょう。
- 100Gold
- ベストアンサー率27% (284/1018)
rmコマンドを使ってください。 NetBSDではどうか知りませんが、unlinkコマンドおよびlinkコマンドはrootユーザーしか使えないと思います。これらは知らなくてもいいコマンドです。
- ranx
- ベストアンサー率24% (357/1463)
記憶があやふやなのですが、rmはコマンド、unlinkはシステムコールじゃ なかったですか?そうであれば、シェル等で使う場合はrm、プログラムで 使う場合はunlinkになると思いますが。 なお、UNIXではハードリンクが可能なので、「全ての」リンクを切らない 限り、ファイルの実体は消されません。
補足
>特定条件でrmと同じような動作をすることもありま>すが、異なる動作をします。 異なる動作というのは、どのような動作なのでしょうか? そのあたりがわかるページなどありませんでしょうか?