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/bashexport wanIP=$(grep -n "wanIP" ./wanIP.txt) //grep命令从文件中查找以字符串"wanIP"开头的行 //"./"是当前路径。 //得到的信息为:1:wanIP=88.0.100.253。echo $wanIP //此时变量wanIP的值为:1:wanIP=88.0.100.253export 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/libexport 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。
Linux平台从文件中查找字符赋值于变量的更多相关文章
- grep在指定类型的文件中查找字符 (转载)
转自:http://blog.csdn.net/qvbfndcwy/article/details/8127329 find -name '*.php'|xargs grep 'include'//在 ...
- linux在所有文件中查找某一个字符
# find <directory> -type f -name "*.c" | xargs grep "<strings>" < ...
- linux 多个文件中查找字符串 hadoop 3 安装 调试
http://www.cnblogs.com/iLoveMyD/p/4281534.html 2015年2月9日 14:36:38 # find <directory> -type f - ...
- linux 多个文件中查找字符串
2015年2月9日 14:36:38 # find <directory> -type f -name "*.c" | xargs grep "<str ...
- Linux 在文件夹的所有文件中查找某字符
命令: grep -r -e string directory eg: 在 /home 目录下的所有文件中查找包含 test 字符串的文件. grep -r -e "test" / ...
- Linux 在文档中查找满足条件的行并输出到文件:
Linux 在文档中查找满足条件的行并输出到文件: 文件名称: dlog.log 输出文件: out.log 1.满足一个条件(包含 “TJ” )的语句: grep “TJ” dlog. ...
- 在文件夹下所有文件中查找字符串(linux/windows)
在linux下可以用 grep "String" filename.txt#字符串 文件名grep -r "String" /home/#递归查找目录下所有文件 ...
- Linux - Shell - 在多个文件中查找关键字
1. 概述 在多个文件中 查找内容 2. 想干啥 目的 在 多个文件 中, 查找内容 准备 之前在 单个文件里 查找过内容 工具 awk 前提 文件有固定格式 查找时有字段的要求 例子 # print ...
- Java查找指定文件中指定字符的个数
package lwl.youweb2.test; import java.io.BufferedReader; import java.io.FileReader; import java.io.I ...
随机推荐
- 【转】JQuery.Ajax之错误调试帮助信息
下面是Jquery中AJAX参数详细列表: 参数名 类型 描述 url String (默认: 当前页地址) 发送请求的地址. type String (默认: "GET") 请求 ...
- HDU 4262 Juggler
点我看题 初步想法是模拟,找到下一个位置并记录操作数,O(n^2)肯定会超时. 那么进行优化,会发现到下一位置的操作数就是两个位置之间存在的数的个数,于是就变成了计数问题. 不难想到用树状数组或线段树 ...
- java导出数据Excel总结
//创建获取到JFileChooser的文件名的JTextField public JTextField getTextField(Container c){ JTextField textField ...
- redis34--string 操作
String类型操作 1.set key value 设置key对应的值为string类型的value 2.mset key1 value1 - keyN valueN 一次设置多个key的值 3. ...
- File对象的常用方法
File对象不仅可以表示文件,还可以表示目录,源码注释是这么说的:An abstract representation of file and directory pathnames. File类最常 ...
- Linux中变量#,#,@,0,0,1,2,2,*,$$,$?的含义
$# 是传给脚本的参数个数 $0 是脚本本身的名字 $1 是传递给该shell脚本的第一个参数 $2 是传递给该shell脚本的第二个参数 $@ 是传给脚本的所有参数的列表 $* 是以一个单字符串显示 ...
- Win10安装安卓ADB驱动
Win10安装安装ADB驱动 Step1: 首先在黄色感叹号的ADB Interface 点右键菜单,选择“更新驱动程序软件”菜单. 在弹出“更新驱动程序软件”窗口中,选择下面一项“浏览计算机以查找驱 ...
- SVN-Attempted to lock an already-locked dir错误
svn更新时,文件夹被锁死. 解决办法: 右键该文件,在team(版本管理)里面执行"清除"操作后,问题解决了.
- Firebug入门指南
据说,对于网页开发人员来说,Firebug是Firefox浏览器中最好的插件之一. 我最近就在学习怎么使用Firebug,网上找到一篇针对初学者的教程,感觉比较有用,就翻译了出来. ========= ...
- PAT 团体程序设计天梯赛-练习集 L2-009. 抢红包
没有人没抢过红包吧…… 这里给出N个人之间互相发红包.抢红包的记录,请你统计一下他们抢红包的收获. 输入格式: 输入第一行给出一个正整数N(<= 104),即参与发红包和抢红包的总人数,则这些人 ...