public static void PosixDelete(string path)
{
int ret = Mono.Unix.Native.Syscall.unlink (path);
if (ret == -1)
throw new System.IO.IOException (String.Format (
"Delete failed for {0}: {1}",
path,
Mono.Unix.Native.Stdlib.strerror (Mono.Unix.Native.Stdlib.GetLastError ())));
}