当前位置:网站首页>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]所创,转载请带上原文链接,感谢
边栏推荐
- Astra: Apache Cassandra的未来是云原生
- 成功解决An error ocurred while starting the kernel
- Template linked list learning
- 技术人员该如何接手一个复杂的系统?
- 【总结系列】互联网服务端技术体系:高性能之数据库索引
- OSChina 周日乱弹 —— 之前呢,我一直以为自己是个……
- Macquarie Bank drives digital transformation with datastex enterprise (DSE)
- 蓝牙2.4G产品日本MIC认证的测试要求
- Is blazor ready to serve the enterprise?
- PerconaXtraDBCluster8.0 最详尽用法指南
猜你喜欢
随机推荐
M 端软件产品设计思虑札记 - 知乎
Insight -- the application of sanet in arbitrary style transfer
GoLand writes a program with template
How can a technician take over a complex system?
SQL Server 2008R2 18456 error resolution
M-end software product design considerations - Zhihu
VC6 compatibility and open file crash resolution
计算机网络基本概念(五)局域网基本原理
Simple use of future in Scala
糟糕,系统又被攻击了
Seven features of Python 3.9
Review the cloud computing application scenarios you didn't expect (Part 1)
FORTRAN77从文件中读入若干数据并用heron迭代公式开方
vivoY73s和vivoY70s的区别 vivoY73s和vivoY70s哪个值得入手
分布式共识机制
More than 50 object detection datasets from different industries
python_scrapy_房天下
Python learning Day1 -- Basic Learning
解决Safari浏览器下载文件文件名称乱码的问题
C expression tree (1)




