2017-02-21 2 views
4

標準ライブラリはファイルのアクセス権を変更する方法を提供するので、何か不足しているのだろうかと思っています。RustのUnixプラットフォームでファイルメタデータ(オーナーなど)を変更する方法はありますか?

+0

私はRustの 'std'がファイル所有者を変更する方法を持っているとは思わない。しかし 'libc' crate(https://crates.io/crates/libc)は' chmod'関数を持っています。 –

+2

プラットフォーム依存でなければならないので、 'std'には含まれていないと思われます。 –

答えて

4

いくつかのOS固有のfuntionalityはstd::osモジュールで見つけることができます。たとえばstd::os::unix::fs::MetadataExtuid/​​または​​ファイルモードを扱うを読み取ることができます。しかし、AFAIKにはオーナー/グループの変更のためのstdサポートはありません。

PeterHallとしてコメントされており、クレートにはchmod(およびchown)の機能があります。

さらなる例とインスピレーションのために、多くの一般的なGNU CLIユーティリティを実装しているcoreutilsプロジェクトを参照することをお勧めします。その中で、メタデータの操作を見つけることができます。

関連する問題