当前位置:网站首页>Rust: command line parameter and environment variable operation
Rust: command line parameter and environment variable operation
2020-11-08 08:59:00 【osc_sejgcp0】
Rust in , We often encounter command line parameters and environment variable operations . Let's have a look at .
One 、 Command line arguments
You can see from above ,std::env Realized from cargo run Command line parameters are extracted from the command line a b c Enter the program .
Two 、 Read environment variables
std::env::var function , The function of environment variable in operating system is realized .
env::var()-> std::env::Vars
Vars What is it? , Very complicated , He did Iterator. The following is the source code in the standard library :
#[stable(feature = "env", since = "1.0.0")]
pub struct Vars {
inner: VarsOs,
}
/// An iterator over a snapshot of the environment variables of this process.
///
/// This structure is created by the [`std::env::vars_os`] function. See
/// its documentation for more.
///
/// [`std::env::vars_os`]: vars_os
#[stable(feature = "env", since = "1.0.0")]
pub struct VarsOs {
inner: os_imp::Env,
}
It should be noted that , In the environment variables , Characters don't have to be Unicode The standard , That would be a false report . You can use :
env::vars_os
following : Read specific environment variables
use std::env;
fn main() {
let args: Vec<String> = env::args().collect();
//println!("get command args :{:?} ", args);
//println!("get env args : ");
for (key, value) in env::vars() {
//println!(" {} => {}", key, value);
}
let key = "PATH";
match env::var(key) {
Ok(val) => {
// val is String, splited by ";"
println!("val =>{}",val);
},
Err(e) => println!("couldn't interpret {}: {}", key, e),
}
}
3、 ... and 、 Set the environment variable
Generally include : View all environment variables 、 Set new environment variables and modify old environment variables .
1、 stay cmd Next
The settings are made above , View individual environment variable operations 、 Modify the operating . It's still relatively simple .
2、powshell
# View all environment variables ls env:
# Search for environment variables ls env:NODE*
# Look at a single environment variable $env:NODE_ENV
# add to / Update environment variables $env:NODE_ENV=development
# Delete environment variables del evn:NODE_ENV
3、linux
modify bashrc file , This method is safer , It can control the permission to use these environment variables to the user level , This is for a specific user , If you need to give a user permission to use these environment variables , You only need to modify the
.bashrc Just file it .vi ~/.bashrc
Add below :
Export PATH="$PATH:/NEW_PATH"
source :
https://www.cnblogs.com/Joans/p/7760378.html
版权声明
本文为[osc_sejgcp0]所创,转载请带上原文链接,感谢
边栏推荐
- 来自不同行业领域的50多个对象检测数据集
- M-end software product design considerations - Zhihu
- Rust:命令行参数与环境变量操作
- Python learning Day1 -- Basic Learning
- More than 50 object detection datasets from different industries
- VC6兼容性及打开文件崩溃问题解决
- 抖音直播监控Api:随机推荐
- 进程、线程和协程的区别
- Experience the latest version of erofs on Ubuntu
- Astra: Apache Cassandra的未来是云原生
猜你喜欢
【原创】关于高版本poi autoSizeColumn方法异常的情况
软件测试就是这么回事?!
Adobe Prelude /Pl 2020软件安装包(附安装教程)
Ulab 1.0.0 release
解决Safari浏览器下载文件文件名称乱码的问题
python学习 day1——基础学习
Unparseable date: 'Mon Aug 15 11:24:39 CST 2016',时间格式转换异常
How does spotify drive data-driven decision making?
Shiyou's numerical analysis assignment
iOS 学习笔记二【cocopods安装使用和安装过程中遇到的问题及解决办法】【20160725更新】
随机推荐
Windows下子系统Ubuntu安装
【原创】关于高版本poi autoSizeColumn方法异常的情况
Insight -- the application of sanet in arbitrary style transfer
What? Your computer is too bad? You can handle these moves! (win10 optimization tutorial)
IOS learning note 2 [problems and solutions encountered during the installation and use of cocopods] [update 20160725]
Mouse small hand
c# 表达式树(一)
Visual studio 2015 unresponsive / stopped working problem resolution
解决RabbitMQ消息丢失与重复消费问题
Search and replace of sed
模板链表类学习
Solve the problem of rabbitmq message loss and repeated consumption
阅读心得:FGAGT: Flow-Guided Adaptive Graph Tracking
Template linked list learning
鼠标变小手
5g + Ar out of the circle, China Mobile Migu becomes the whole process strategic partner of the 33rd China Film Golden Rooster Award
糟糕,系统又被攻击了
洞察——风格注意力网络(SANet)在任意风格迁移中的应用
Tiktok live monitoring Api: random recommendation
蓝牙2.4G产品日本MIC认证的测试要求