3 个版本 (重大更新)
0.3.0 | 2022年9月29日 |
---|---|
0.2.0 | 2019年4月20日 |
0.1.0 | 2018年8月6日 |
#8 in #stub
18KB
83 代码行
clap-permission-flag
使用 structopt 降低 CLI 的权限。
用法
use clap::Parser;
#[derive(Debug, Parser)]
struct Cli {
#[clap(flatten)]
permission: clap_permission_flag::Permission,
}
fn main() -> Result<(), Box<dyn std::error::Error>> {
let args = Cli::parse();
args.permission.drop()?;
Ok(())
}
此 crate 依赖于 Unix 功能 - 在其他平台上,使用无标志且始终成功的存根实现。
示例输出
clap-permission-flag 0.2.0
Yoshua Wuyts <[email protected]>
Drop permissions of a CLI using structopt
USAGE:
main [OPTIONS]
FLAGS:
-h, --help Prints help information
-V, --version Prints version information
OPTIONS:
--chroot <chroot> Change the process root directory
-g, --group <group> Change the process group
-u, --user <user> Change the process user
安装
$ cargo add clap-permission-flag
由于 --chroot
可能不适合所有应用程序,它位于 chroot
功能之后,并且必须明确启用。
[dependencies.clap-permission-flag]
version = "0.2"
features = ["chroot"]
另请参阅
许可证
依赖关系
~3.5MB
~69K SLoC