国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Linux > 正文

shell腳本中如何輸出變量的變量例子

2024-08-27 23:58:53
字體:
來源:轉載
供稿:網友

本文章重點的介紹一下關于shell變量知識點了,文章介紹的了一個shell變量中變量同時后面還介紹調用了系統環境變量的方法,大家一起來看看.

問題背景:

  1. #!/bin/sh 
  2. PHP=100; 
  3. JAVA=101 
  4. LANGUAGE="PHP JAVA" 
  5. for lang in $LANGUAGE 
  6. do 
  7. //這里想逐行輸出100, 101  該怎么寫呢? 
  8. done 

解決方法-數字字符串:

  1. #!/bin/sh PHP=100; 
  2. JAVA=101 
  3. LANGUAGE="PHP JAVA" for lang in $LANGUAGE do 
  4.     echo $[$lang
  5. done 

解決方法-字母字符串:

  1. #!/bin/sh 
  2. LANGUAGE=(PHP JAVA) 
  3. LANGUAGE_VALUE=(/data/1 /data/2) 
  4. for ((i=0;i< ${#LANGUAGE[@]};i++)) 
  5. do 
  6.     echo ${LANGUAGE_VALUE[$i]} 
  7. done 

shell 腳本導出環境變量:

如果你想用一個bash腳本來導出一些環境變量給bash shell使用,就會碰到一些問題,因為每一個bash腳本是唯一的一個會話,這些環境變量只會在其自己的腳本里起作用,對于下一次要用到的這些環境變量,bash shell中還是不存在.

例如:在 env.sh 腳本中包含有下面的語句:

  1. export HELLO=hello 
  2. export HELLO2=world 

當你運行完 env.sh 以后,再接著執行 echo $HELLO $HELLO2 在bash shell中,你不會得到任何東西,正確的導出環境變量的方法是 使用source命令來從你的bash腳本中導出環境變量.

  1. $ source env.sh 
  2. echo $HELLO $HELLO2 
  3. $ hello world 

你能放env.sh腳本到 /usr/bin 目錄下,接著在任何路徑下執行 source env.sh,它都能很好地工作,在這里你要使用source命令來代替直接執行運行腳本,但我意識到,很多使用者沒有意識到source命令的作用.

在linux的世界中,你還有另外一種方法來使用這些環境變量在單獨的一個環境中,而不影響其他shell的使用,就是 bash -i 通過bash腳本創建一個新的交互bash會話,當你不在使用它的時候,通過exit來退出即可.

下面為例子:

  1. ############################################ 
  2. build_arm.sh 
  3. #!/bin/bash 
  4. export ARCH=arm 
  5. export CROSS_COMPILE=arm-none-linux-gnueabi- 
  6. export PS1="\e[31mBUILD_ARM \w \e[m\n\$" 
  7. ############################################ 
  8. $ bash -i  //Vevb.com 
  9. //接著, 
  10. $./build_arm.sh 
  11. BUILD_ARM ~ $ 
  12. //當你不在使用它的時候, 
  13. BUILD_ARM ~ $ exit 

這樣就退出到起初的bash shell了.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 海晏县| 武夷山市| 洪泽县| 包头市| 嘉祥县| 延庆县| 雷山县| 孟津县| 通榆县| 区。| 油尖旺区| 开封市| 宜丰县| 宁海县| 乌拉特前旗| 宕昌县| 长丰县| 开原市| 门源| 长岛县| 西乡县| 西平县| 伊金霍洛旗| 瓦房店市| 十堰市| 贵州省| 秀山| 九龙城区| 房产| 抚宁县| 陆川县| 光山县| 龙门县| 阳朔县| 全椒县| 南和县| 军事| 哈尔滨市| 广安市| 宝鸡市| 前郭尔|