environment-variables - Git-Bash,如何修改环境变量
问题描述
我有一个环境变量,其中包含:
C:\\Users\\u49100\\OneDrive\\Documents\\CA20-4021_BUILD_1.0.876\\Name\\sc_app
我想在脚本剥离中修改环境变量:
C:\\Users\\u49100\\
因此可以将结果分配给一个新变量:
OneDrive\\Documents\\CA20-4021_BUILD_1.0.876\\Name\\sc_app
有没有办法执行以下操作:
NEW_VARIABLE=$FULL_DIR - $DIR_PREFIX
其中 $FULL_DIR 将包含完整目录,而 $DIR_PREFIX 将包含要删除的目录开头的前缀。
解决方案
经过大量搜索和一些玩耍后,我发现了以下内容:
要获取环境变量的字符长度:
echo ${#VARNAME}
要从环境变量中获取子字符串:
echo ${VARNAME:start:length}
其中“开始”是基数 0,“长度”是要提取的字符数,长度是可选的,如果未提供,则只需使用:
echo ${VARNAME:start}
将导致整个内容从指定的起始偏移量开始。
所以就我而言,解决方案是:
export NEW_VARIABLE=${FULL_DIR:${#DIR_PREFIX} + 1}
用转义空格搜索和替换任何空格:
export NEW_VARIABLE=${NEW_VARIABLE// /\\ }
“//”是替换所有实例,如果只是“/”那么只有第一个被替换,“/\”是空格字符的转义版本。
推荐阅读
- python-3.x - 如何从表中提取上下文数据来训练自定义命名实体识别器?
- verilog - Verilog中特定整数计数的位数
- linux - 如何在 docker 中运行本地图像/容器?
- typescript - Typescript - 如何将函数指针传递给函数并在函数体内调用
- blockchain - 关于区块链和智能合约的几个问题
- python - Pandas:从给定名称列表中获取列索引
- r - 如何在 R 中创建类似于附加图像的视觉效果?
- spring-boot - WebFlux 添加阻塞逻辑
- javascript - 当用户播放另一个视频时停止当前视频播放?
- java - 将 log4j 附加到 logback 日志