ご注意ください

  • 当ブログのコメントやトラックバックに、アカウントハックサイトや、そのようなサイトへリダイレクト(転送)される可能性が高いサイトへのリンクが時々貼られているようです。
    そのようなサイトへのリンクが貼られたコメント・トラックバックは、見つけ次第削除・禁止ワード登録していますが、今後も危険なサイトへのリンクが貼られる可能性がありますので、安易にリンク先へ飛ばないよう充分ご注意ください。

オンラインゲーム関連

著作権表示

  • 当ブログに記載されている
    会社名・製品名・システム名などは、
    各社の登録商標、もしくは商標です。

    当ブログ上の文章・写真・画像の
    無断転載、無断転用、直リンクなどは
    行わないでください。

    (C) 1998-2016 Vertex.
    (C) 2002-2016 SQUARE ENIX CO., LTD.
    (C) CAPCOM CO., LTD. 2007, 2016

    All Rights Reserved.
無料ブログはココログ

« ロビンマスクまで… | トップページ | bashで数値文字列判定 »

C言語のremove()とunlink()

ファイルを削除する処理を追加したとき、自分はいつもremove()を使っていたけど、ふと、unlink()と何が違うのかが気になったので調べてみた。

調べてみたと言っても、「Manpage remove」「Manpage unlink」というキーワードでググってみただけ。

linux.or.jpのマニュアルページによると、remove()はファイルを指定された場合は内部でunlink()を呼び、ディレクトリを指定された場合はrmdir()を呼ぶらしい。

ということは、通常はremove()を使っていてもいいし、明示的にファイルだけを削除対象とする、という意味でunlink()を使ってもいいようだ。

逆に、ディレクトリが指定されたら削除したくない、という場合は、remove()よりunlink()の方がいいのかな。unlink()でディレクトリを削除しようとすればエラーとしてEISDIRが返るようだし。

ディレクトリなのかファイルなのかは事前チェックするべきかもしれないけど…。

とりあえず備忘録としてメモメモ。


Manpage of REMOVE
Manpage of UNLINK

« ロビンマスクまで… | トップページ | bashで数値文字列判定 »

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/189342/47421061

この記事へのトラックバック一覧です: C言語のremove()とunlink():

« ロビンマスクまで… | トップページ | bashで数値文字列判定 »

フォト
2017年5月
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      

最近のトラックバック