shell脚本中如何输出变量的变量例子
发布:smiling 来源: PHP粉丝网 添加日期:2015-04-22 14:10:55 浏览: 评论:0
本文章重点的介绍一下关于shell变量知识点了,文章介绍的了一个shell变量中变量同时后面还介绍调用了系统环境变量的方法,大家一起来看看.
问题背景:
- #!/bin/sh
- PHP=100;
- JAVA=101
- LANGUAGE="PHP JAVA"
- for lang in $LANGUAGE
- do
- //这里想逐行输出100, 101 该怎么写呢?
- done
解决方法-数字字符串:
- #!/bin/sh PHP=100;
- JAVA=101
- LANGUAGE="PHP JAVA" for lang in $LANGUAGE do
- echo $[$lang]
- done
解决方法-字母字符串:
- #!/bin/sh
- LANGUAGE=(PHP JAVA)
- LANGUAGE_VALUE=(/data/1 /data/2)
- for ((i=0;i< ${#LANGUAGE[@]};i++))
- do
- echo ${LANGUAGE_VALUE[$i]}
- done
shell 脚本导出环境变量:
如果你想用一个bash脚本来导出一些环境变量给bash shell使用,就会碰到一些问题,因为每一个bash脚本是唯一的一个会话,这些环境变量只会在其自己的脚本里起作用,对于下一次要用到的这些环境变量,bash shell中还是不存在.
例如:在 env.sh 脚本中包含有下面的语句:
- export HELLO=hello
- export HELLO2=world
当你运行完 env.sh 以后,再接着执行 echo $HELLO $HELLO2 在bash shell中,你不会得到任何东西,正确的导出环境变量的方法是 使用source命令来从你的bash脚本中导出环境变量.
- $ source env.sh
- $ echo $HELLO $HELLO2
- $ hello world
你能放env.sh脚本到 /usr/bin 目录下,接着在任何路径下执行 source env.sh,它都能很好地工作,在这里你要使用source命令来代替直接执行运行脚本,但我意识到,很多使用者没有意识到source命令的作用.
在linux的世界中,你还有另外一种方法来使用这些环境变量在单独的一个环境中,而不影响其他shell的使用,就是 bash -i 通过bash脚本创建一个新的交互bash会话,当你不在使用它的时候,通过exit来退出即可.
下面为例子:
- ############################################
- build_arm.sh
- #!/bin/bash
- export ARCH=arm
- export CROSS_COMPILE=arm-none-linux-gnueabi-
- export PS1="\e[31mBUILD_ARM \w \e[m\n\$"
- ############################################
- $ bash -i //phpfensi.com
- //接着,
- $./build_arm.sh
- BUILD_ARM ~ $
- //当你不在使用它的时候,
- BUILD_ARM ~ $ exit
- $
这样就退出到起初的bash shell了.
Tags: shell脚本 shell输出变量
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)