加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

将变量从文本文件加载到bash脚本中

发布时间:2020-12-16 01:31:06 所属栏目:安全 来源:网络整理
导读:是否可以将文本文件中的新行加载到bash中的变量? 文本文件看起来像? EXAMPLEfoo EXAMPLEbarEXAMPLE1EXAMPLE2EXAMPLE3EXAMPLE4 变量变成了 $1 = EXAMPLEfoo $2 = EXAMPLEbar 等等? $s=$(file)$set -- $s$echo $1EXAMPLEfoo$echo $2EXAMPLEbar$echo $@EXAMP
是否可以将文本文件中的新行加载到bash中的变量?

文本文件看起来像?

EXAMPLEfoo 
EXAMPLEbar
EXAMPLE1
EXAMPLE2
EXAMPLE3
EXAMPLE4

变量变成了

$1 = EXAMPLEfoo 
$2 = EXAMPLEbar

等等?

$s=$(<file)
$set -- $s
$echo $1
EXAMPLEfoo
$echo $2
EXAMPLEbar
$echo $@
EXAMPLEfoo EXAMPLEbar EXAMPLE1 EXAMPLE2 EXAMPLE3 EXAMPLE4

我将通过摆脱临时变量s来改进上述内容:

$set -- $(<file)

如果你输入一个这样的文件

variable1 = value
variable2 = value

您可以使用以下构造来获取命名变量.

input=`cat filename|grep -v "^#"|grep "c"`
set -- $input

while [ $1 ]
 do
  eval $1=$3
  shift 3
 done

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读