複数のリンクを含む一連のファイルがあります。
ファイルは TFS ソース管理によって所有されていますが、それらへの他のリンクが作成されています。読み取り専用ビットをクリアせずに追加のリンクを削除するにはどうすればよいですか。
仮定するのは安全です:
- ファイルには複数のリンクがあります
- TFSが所有する名前を削除していません
- 潜在的な競合状態はありません
- ファイルに対する ACL の完全な制御権を持っている
- 時間がかかりすぎない限り、マシンの電源が失われることはなく、プログラムが強制終了されることもありません。
仮定するのは安全ではありません:
- 読み取り専用ビットが設定されている (設定されていない場合は設定しないでください)
- エラーが発生し、最初に設定されていた場合は、読み取り専用ビットをクリアのままにしておくことができます
スーパーユーザーに移行しないでください。そこに移行した場合、これを実行できる標準ツールがないため、答えは不可能です。
ファイルを削除するためにファイルへの書き込み許可が必要な架空の *nix システムでは、fchmod() を使用した解決策があります。ただし、この動作を示すシステムは Windows システムです。