Bash - 变量和命令的变量

时间:2017-04-24 21:48:16

标签: bash sed scripting

我一直在尝试创建一个包含其他值的值的变量以及要发出的命令。我找到了这些坐垫的个人答案,但我很难将它们放在一起。

下面的$ DID和$ SECTOR是已经建立的两个变量。

DATAPARMS=$($DID,$SECTOR,date,uptime | sed 's/^.* up \+\(.\+\), \+[0-9] user.*$/\1/',ls -I README.txt /var/www/html | wc -l,grep "VERSION" /root/config | grep -o '".*"' | sed 's/"//g')

可以忽略各个命令(grep,sed等)。

我想用echo来称呼它:

echo "$DATAPARMS"

有关如何最好地完成此任务的任何指示?非常感谢你!

1 个答案:

答案 0 :(得分:1)

BashFAQ #50中所述,变量不应用于存储代码。请改用函数,如下所示:

getDataParams() {
  echo "$DID,$SECTOR,date,uptime" | sed 's/^.* up \+\(.\+\), \+[0-9] user.*$/\1/'
  ls -I README.txt /var/www/html  | wc -l
  grep "VERSION" /root/config     | grep -o '".*"' | sed 's/"//g'
}

getDataParams