Linux平台从文件中查找字符赋值于变量
以telnet方式登录Linux主机,在默认目录下用命令创建一个包含DUT wanIP的文本文件。
[root] echo wanIP=88.0.100.253 > ./wanIP.txt
在默认目录下创建包含以下内容的shell脚本。
1
2
3
4
5
6
7
8
9
|
#! /bin/bash export wanIP=$( grep -n "wanIP" . /wanIP .txt) //grep 命令从文件中查找以字符串 "wanIP" 开头的行 // "./" 是当前路径。 // 得到的信息为:1:wanIP=88.0.100.253。 echo $wanIP // 此时变量wanIP的值为:1:wanIP=88.0.100.253 export DUTWANIP={$wanIP ##*=} //从左往右截取wanIP中直到最后一个"="为止右边的字符串。 echo $DUTWANIP // 此时变最DUTWANIP的值为88.0.100.253。 // 此变量可以用在其它命令中。 ping $DUTWANIP |
在实际操作中,可能需要利用命令执行多条相同的命令。在命令后面加上"&",将命令调到后台运行。
结束的时候,用"killall im"结束程序即可。
Linux平台下,变量有两种:
1. 永久型:需要修改配置文件,生成的变量永久生效。
2. 临时型:使用"export"命令声明的变量,此类变量在关闭shell时失效。
在Linux平台下,有三种方法设置变量:
1. 在"/etc/profile"文件中添加变量,此类变量对用户是永久生效的。
用"VI"在文件"/etc/profile"文件中增加变量,该变量将会对Linux下所有用户永久生效。
例如:添加变量"variable_name"
1
2
|
#vi /etc/profile variable_name=/JAVA_HOME/lib;$JAVA_HOME/jre/lib export varialbe= /JAVA_HOME/lib ;$JAVA_HOME /jre/lib |
PS:修改文件后要想马上生效,还需要运行"#source /etc/profile",不然只能在下次重进此用户时生效。
2. 在用户目录下的".bash_profile"文件中增加变量,此类用户只对实行操作的用户永久生效。
例如:编辑phoenix用户目录(/home/phoenix)下的".bash_profile"
1
|
$ vi /home/phoenix/ .bash_profile |
PS:修改文件后要想立即生效,还需要运行"$sorce /home/phoenix/.bash_profile",不然要等到下次重进此用户时生效。
3. 直接运行"export"命令定义变量,此类变量只对当前的shell有效,属于临时变量。shell关闭了,变量也就失效了。再打开新的shell, 需要使用的话还需要重新定义。
PATH的声明,其格式为:
PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:······:<PATH N>
环境变量更改后,在用户下次登录时生效。为了立即生效,则执行:$source .bash_profile。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架