`
hanqunfeng
  • 浏览: 1526347 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

shell脚本读取变量方法

阅读更多

最近总需要写一些shell脚本,扔到linux上执行,有的时候写的脚本比较多,而这些脚本都会用到一些公共的变量,比如路径的配置等等,如果每个脚本里都写上一遍,等到环境变了修改起来很麻烦,本人对shell的理解也在逐渐学习中,这里说一种目前我较常用的解决方案。

1.将变量统一写到一个文件中,如param.list ,格式有点像java中的properties ,采用名值对的形式,只不过value前要加上空格,如name=#value(因为看的不是很清楚,所以使用#代替空格,正式使用时将#替换为空格).

举例如下:

JAVA_PATH=#/usr/local/jdk6/bin

TOMCAT_HOME=#/usr/local/tomcat

2.在各个脚本文件中读取时使用如下命令

java_path=`awk '/JAVA_PATH=/{print $2}' param.list `

说明:使用awk命令,读取 param.list ,将包含“JAVA_PATH=”的行取出,并只取出该行的第二列内容(以空格分隔,所以name是第一列,value就是第二列),这里要注意 param.list 的路径问题。

这样一来,如果变量发生变化,只需要修改 param.list即可。

分享到:
评论

相关推荐

    Shell脚本专家指南

    《Shell脚本专家指南》旨在为Linux、Unix以及OSx系统管理员提供短小精悍且功能强大的shell实现解决方案,教会读者如何使用现有调试器调试shell脚本。全书分为3个部分:脚本技术基础、系统交互和高级技术、有用的脚本...

    利用Shell脚本循环读取文件中每一行的方法详解

    本文主要给大家介绍了关于使用Shell脚本循环读取文件每一行的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 一、使用for循环 for line in `cat filename` do echo $line done ...

    Shell脚本学习笔记

    3.4.2 读取变量与读取命令 69 3.4.3 改变字段分隔符与使用通配符读取目录 69 3.4.5 C式的for命令 70 3.5 while、until命令 71 3.5.1 使用多条测试命令 71 3.5.2 until命令与循环嵌套 72 3.6 文件数据的循环与控制...

    shell脚本命令行参数简介

    之所以用到命令行参数,关键...shell脚本自动将命令行参数赋值给各个位置变量。同时输入多个参数可以是数值也可以是字符串)时,必须使用空格分隔要想在参数值中包含空格,就必须使用单引号或双引号)当参数多于9个后,

    浅谈shell循环中变量的作用域问题

    最近实现了一个shell脚本,功能简单来说就是从文件中按行读取然后将所有行拼接成一行写入一个文件,关键代码如下 path_all= cat $1 | while read line do if [ $path_all == ];then path_all=$line else path_...

    从数据库中取变量传递给shell,生成环境变量

    从DB中取检索值传递给shell,生成环境变量 1. 编写myshellpara.sql 通过spool 执行一个SQL读取所要的值,结果保存在myshellvar_export.sh set feedback off; set heading off; set pagesize 0; set linesize 1000; ...

    用shell命令读取与输出数据的代码

    shell脚本读取数据有以下几种方式:1.键盘输入,默认2.从文件中读取3.通过管道命令传递 echo的功能:\c :不换行\f :进纸\t :跳格\n :换行\表示转义,例如:”\”/dev/rmt0″\”翻译为,”/dev/rmt0″ read:从键盘或...

    Linux下Shell从入门到精通完整版视频.zip

    2.Shell编程之变量及LAMP导航菜单编写.mp4 3.Shell编程之IF条件语句各种案例演练.mp4 4.使用if条件语句编写MySQL备份脚本.mp4 5.Shell编程之LAMP一键安装脚本实战.mp4 6.For循环及实战批量远程命令脚本.mp4 7.While...

    Linux CentOS7 shell 脚本基础

    可以在脚本中输入系统的命令以及相关的语法语句组合,比如变量,流程控制语句等,把他们有机结合起来就形成了一个功能强大的 shell 脚本。 创建 shell 程序的步骤: (1)创建一个包含命令和控制结构的文件,vim ...

    Shell中特殊参数变量和特殊状态变量汇总

    ${10}:传递给Shell脚本的第10个参数,读取的参数位置大于等于10之后需要使用花括号 $@:传递给Shell脚本的所有参数组成的列表,即参数列表 $*:传递给Shell脚本的的所有参数组成的单个字符串,不同参数之间空格依旧...

    CopyRightNoticeGenerator:GPL版权声明的Shell脚本和模板。-开源

    有关如何使用“ here document”的示例在UNIX shell脚本中,“ here document”的惯用法可以使变量替换更加容易。 这个shell脚本取决于“ here document”表达式。 因此,您可以将其视为如何使用“此处文档”的示例...

    shell 编程指南pdf

    16.1 使用shell脚本的原因 151 16.2 脚本内容 151 16.3 运行一段脚本 152 16.4 小结 153 第17章 条件测试 154 17.1 测试文件状态 154 17.2 测试时使用逻辑操作符 155 17.3 字符串测试 155 17.4 测试数值 156 17.5 ...

    linux中用shell快速安装配置Go语言的开发环境

    介绍 go1.5+版本提供编译好的安装包,我们只需要解压到相应的目录,并添加一些环境变量的配置即可。...下面是安装脚本 #!/bin/bash #Upgrade go version to 1.7 #wget https://storage.googleapis.com/golang/g

    LINUX与UNIX SHELL编程指南(很全)

    16.1 使用shell脚本的原因 151 16.2 脚本内容 151 16.3 运行一段脚本 152 16.4 小结 153 第17章 条件测试 154 17.1 测试文件状态 154 17.2 测试时使用逻辑操作符 155 17.3 字符串测试 155 17.4 测试数值 156 17.5 ...

    绝版经典《Linux与UNIX Shell编程指南》

    16.1 使用shell脚本的原因 151 16.2 脚本内容 151 16.3 运行一段脚本 152 16.4 小结 153 第17章 条件测试 154 17.1 测试文件状态 154 17.2 测试时使用逻辑操作符 155 17.3 字符串测试 155 17.4 测试数值 156 17.5 ...

    apk自动安装脚本

    自己写了一个脚本,代替91手机助手之类的安装,记得把adb目录加入到系统环境变量,脚本放在任何地方都行,apk拖到脚本上面自动安装~~~apk名字不能有中文

    shell教程-30章,下了之后会让你大吃一惊,相当好

    16.1 使用shell脚本的原因 151 16.2 脚本内容 151 16.3 运行一段脚本 152 16.4 小结 153 第17章 条件测试 154 17.1 测试文件状态 154 17.2 测试时使用逻辑操作符 155 17.3 字符串测试 155 17.4 测试数值 156 17.5 ...

    Linux与unix shell编程指南

    16.1 使用shell脚本的原因 151 16.2 脚本内容 151 16.3 运行一段脚本 152 16.4 小结 153 第17章 条件测试 154 17.1 测试文件状态 154 17.2 测试时使用逻辑操作符 155 17.3 字符串测试 155 17.4 测试数值 156 17.5 ...

    LINUX与UNIX SHELL编程指南 高清PDF

    16.1 使用shell脚本的原因 151 16.2 脚本内容 151 16.3 运行一段脚本 152 16.4 小结 153 第17章 条件测试 154 17.1 测试文件状态 154 17.2 测试时使用逻辑操作符 155 17.3 字符串测试 155 17.4 测试数值 156 17.5 ...

Global site tag (gtag.js) - Google Analytics