1

ディレクトリにあるc.txtとしbます。unlink c.txt簡単です。システム{XXX, c.txt}は directory のエントリを削除するだけbです。bしかし、が のサブディレクトリでa、 のリンクを解除したい場合はどうbなりますか? 手順は同じですか、それとももっと複雑ですか?

4

3 に答える 3

5

unlink(2)ファイルのみを削除できますが、rmdir(2)空のディレクトリのみを削除できます。

ディレクトリを再帰的に削除したい場合は、両方のシステムコールを賢く使用する必要があります。たとえば、これは を使用してnftwおり、これopendirは/を使用してreaddirいます。

于 2013-03-11T09:54:37.683 に答える
1

リンク解除のマニュアルページから:

When the utility is called as unlink, only one argument, 
which must not be a directory, may be supplied.  

そのため、unlink を使用する場合、ディレクトリをパラメーターとして渡すことはできません。

于 2013-03-11T09:40:16.370 に答える